This ensures the caller knows where the memory was allocated.
Andrew Bartlett
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;
}
/* 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,
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);
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;
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);
}
/*******************************************************************