diff options
Diffstat (limited to 'source3/libsmb')
-rw-r--r-- | source3/libsmb/asn1.c | 2 | ||||
-rw-r--r-- | source3/libsmb/clilist.c | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/source3/libsmb/asn1.c b/source3/libsmb/asn1.c index b967927871..333d157905 100644 --- a/source3/libsmb/asn1.c +++ b/source3/libsmb/asn1.c @@ -407,7 +407,7 @@ BOOL asn1_check_enumerated(ASN1_DATA *data, int v) return !data->has_error && (v == b); } -/* check a enumarted value is correct */ +/* write an enumarted value to the stream */ BOOL asn1_write_enumerated(ASN1_DATA *data, uint8 v) { if (!asn1_push_tag(data, ASN1_ENUMERATED)) return False; diff --git a/source3/libsmb/clilist.c b/source3/libsmb/clilist.c index 4a1737af49..bf10be887a 100644 --- a/source3/libsmb/clilist.c +++ b/source3/libsmb/clilist.c @@ -324,8 +324,10 @@ static int interpret_short_filename(struct cli_state *cli, char *p,file_info *fi finfo->mtime = finfo->atime = finfo->ctime; finfo->size = IVAL(p,26); clistr_pull(cli, finfo->name, p+30, sizeof(finfo->name), 12, STR_ASCII); - if (strcmp(finfo->name, "..") && strcmp(finfo->name, ".")) - fstrcpy(finfo->short_name,finfo->name); + if (strcmp(finfo->name, "..") && strcmp(finfo->name, ".")) { + strncpy(finfo->short_name,finfo->name, sizeof(finfo->short_name)-1); + finfo->short_name[sizeof(finfo->short_name)-1] = '\0'; + } return(DIR_STRUCT_SIZE); } |