summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2011-04-29 12:05:07 +1000
committerAndrew Bartlett <abartlet@samba.org>2011-04-29 16:38:14 +1000
commit724915f721819705c7cf5c850a24b32f815c07e3 (patch)
treedd4b2748fea9466d941a261ee5a50d1b01874c84
parent0520da2bbe246c45d89bfdec0d399862ecb867ba (diff)
downloadsamba-724915f721819705c7cf5c850a24b32f815c07e3.tar.gz
samba-724915f721819705c7cf5c850a24b32f815c07e3.tar.bz2
samba-724915f721819705c7cf5c850a24b32f815c07e3.zip
s3-client Add TALLOC_CTX argument to attrib_string().
This ensures the caller knows where the memory was allocated. Andrew Bartlett
-rw-r--r--source3/client/client.c4
-rw-r--r--source3/include/proto.h2
-rw-r--r--source3/lib/util.c4
3 files changed, 5 insertions, 5 deletions
diff --git a/source3/client/client.c b/source3/client/client.c
index 4c90716c48..c734a24a6c 100644
--- a/source3/client/client.c
+++ b/source3/client/client.c
@@ -547,7 +547,7 @@ static NTSTATUS display_finfo(struct cli_state *cli_state, struct file_info *fin
if (!showacls) {
d_printf(" %-30s%7.7s %8.0f %s",
finfo->name,
- attrib_string(finfo->mode),
+ attrib_string(talloc_tos(), finfo->mode),
(double)finfo->size,
time_to_asc(t));
dir_total += finfo->size;
@@ -569,7 +569,7 @@ static NTSTATUS display_finfo(struct cli_state *cli_state, struct file_info *fin
}
/* print file meta date header */
d_printf( "FILENAME:%s\n", finfo->name);
- d_printf( "MODE:%s\n", attrib_string(finfo->mode));
+ d_printf( "MODE:%s\n", attrib_string(talloc_tos(), finfo->mode));
d_printf( "SIZE:%.0f\n", (double)finfo->size);
d_printf( "MTIME:%s", time_to_asc(t));
status = cli_ntcreate(cli_state, afname, 0,
diff --git a/source3/include/proto.h b/source3/include/proto.h
index 27a8990e20..a697188abc 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -630,7 +630,7 @@ bool file_exist_stat(const char *fname,SMB_STRUCT_STAT *sbuf,
bool socket_exist(const char *fname);
uint64_t get_file_size_stat(const SMB_STRUCT_STAT *sbuf);
SMB_OFF_T get_file_size(char *file_name);
-char *attrib_string(uint16 mode);
+char *attrib_string(TALLOC_CTX *mem_ctx, uint16 mode);
void show_msg(char *buf);
void smb_set_enclen(char *buf,int len,uint16 enc_ctx_num);
void smb_setlen(char *buf,int len);
diff --git a/source3/lib/util.c b/source3/lib/util.c
index f592a0f778..d908ea86f0 100644
--- a/source3/lib/util.c
+++ b/source3/lib/util.c
@@ -298,7 +298,7 @@ SMB_OFF_T get_file_size(char *file_name)
Return a string representing an attribute for a file.
********************************************************************/
-char *attrib_string(uint16 mode)
+char *attrib_string(TALLOC_CTX *mem_ctx, uint16 mode)
{
fstring attrstr;
@@ -311,7 +311,7 @@ char *attrib_string(uint16 mode)
if (mode & FILE_ATTRIBUTE_SYSTEM) fstrcat(attrstr,"S");
if (mode & FILE_ATTRIBUTE_READONLY) fstrcat(attrstr,"R");
- return talloc_strdup(talloc_tos(), attrstr);
+ return talloc_strdup(mem_ctx, attrstr);
}
/*******************************************************************