summaryrefslogtreecommitdiff
path: root/source3/libsmb/smberr.c
diff options
context:
space:
mode:
authorVolker Lendecke <Volker.Lendecke@SerNet.DE>2007-11-11 15:30:01 +0100
committerJeremy Allison <jra@samba.org>2007-11-11 21:34:40 -0800
commit6069670f1bebc37527c8363a72a653e43fff7c0b (patch)
tree65e70d7b07a35fc977c35c2aaef49492cead627a /source3/libsmb/smberr.c
parent7e9d639ed1584c2f7cd3556ce3e93974851f74c6 (diff)
downloadsamba-6069670f1bebc37527c8363a72a653e43fff7c0b.tar.gz
samba-6069670f1bebc37527c8363a72a653e43fff7c0b.tar.bz2
samba-6069670f1bebc37527c8363a72a653e43fff7c0b.zip
Some pstring removal
Hi! Feel free to push :-) Volker From 7fae6b3709a973bd0a5a13d3f5c880c61d5e35de Mon Sep 17 00:00:00 2001 From: Volker Lendecke <vl@sernet.de> Date: Sun, 11 Nov 2007 15:28:59 +0100 Subject: [PATCH] Remove some static pstrings (This used to be commit c3a66b4ee97a902c5cf43c3bb145541849a029ed)
Diffstat (limited to 'source3/libsmb/smberr.c')
-rw-r--r--source3/libsmb/smberr.c60
1 files changed, 36 insertions, 24 deletions
diff --git a/source3/libsmb/smberr.c b/source3/libsmb/smberr.c
index 1d81011d92..f4a13983f0 100644
--- a/source3/libsmb/smberr.c
+++ b/source3/libsmb/smberr.c
@@ -160,7 +160,7 @@ return a SMB error name from a class and code
****************************************************************************/
const char *smb_dos_err_name(uint8 e_class, uint16 num)
{
- static pstring ret;
+ char *result;
int i,j;
for (i=0;err_classes[i].e_class;i++)
@@ -172,12 +172,15 @@ const char *smb_dos_err_name(uint8 e_class, uint16 num)
return err[j].name;
}
}
- slprintf(ret, sizeof(ret) - 1, "%d",num);
- return ret;
+ result = talloc_asprintf(talloc_tos(), "%d", num);
+ SMB_ASSERT(result != NULL);
+ return result;
}
- slprintf(ret, sizeof(ret) - 1, "Error: Unknown error class (%d,%d)",e_class,num);
- return(ret);
+ result = talloc_asprintf(talloc_tos(), "Error: Unknown error class "
+ "(%d,%d)", e_class,num);
+ SMB_ASSERT(result != NULL);
+ return result;
}
/* Return a string for a DOS error */
@@ -196,17 +199,19 @@ return a SMB error class name as a string.
****************************************************************************/
const char *smb_dos_err_class(uint8 e_class)
{
- static pstring ret;
+ char *result;
int i;
-
+
for (i=0;err_classes[i].e_class;i++) {
if (err_classes[i].code == e_class) {
return err_classes[i].e_class;
}
}
-
- slprintf(ret, sizeof(ret) - 1, "Error: Unknown class (%d)",e_class);
- return(ret);
+
+ result = talloc_asprintf(talloc_tos(), "Error: Unknown class (%d)",
+ e_class);
+ SMB_ASSERT(result != NULL);
+ return result;
}
/****************************************************************************
@@ -214,11 +219,11 @@ return a SMB string from an SMB buffer
****************************************************************************/
char *smb_dos_errstr(char *inbuf)
{
- static pstring ret;
+ char *result;
int e_class = CVAL(inbuf,smb_rcls);
int num = SVAL(inbuf,smb_err);
int i,j;
-
+
for (i=0;err_classes[i].e_class;i++)
if (err_classes[i].code == e_class) {
if (err_classes[i].err_msgs) {
@@ -226,22 +231,29 @@ char *smb_dos_errstr(char *inbuf)
for (j=0;err[j].name;j++)
if (num == err[j].code) {
if (DEBUGLEVEL > 0)
- slprintf(ret, sizeof(ret) - 1, "%s - %s (%s)",
- err_classes[i].e_class,
- err[j].name,err[j].message);
+ result = talloc_asprintf(
+ talloc_tos(), "%s - %s (%s)",
+ err_classes[i].e_class,
+ err[j].name,err[j].message);
else
- slprintf(ret, sizeof(ret) - 1, "%s - %s",
- err_classes[i].e_class,err[j].name);
- return ret;
+ result = talloc_asprintf(
+ talloc_tos(), "%s - %s",
+ err_classes[i].e_class,
+ err[j].name);
+ goto done;
}
}
-
- slprintf(ret, sizeof(ret) - 1, "%s - %d",err_classes[i].e_class,num);
- return ret;
+
+ result = talloc_asprintf(talloc_tos(), "%s - %d",
+ err_classes[i].e_class, num);
+ goto done;
}
-
- slprintf(ret, sizeof(ret) - 1, "Error: Unknown error (%d,%d)",e_class,num);
- return(ret);
+
+ result = talloc_asprintf(talloc_tos(), "Error: Unknown error (%d,%d)",
+ e_class, num);
+ done:
+ SMB_ASSERT(result != NULL);
+ return result;
}
/*****************************************************************************