diff options
author | Jeremy Allison <jra@samba.org> | 1997-08-28 18:59:52 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 1997-08-28 18:59:52 +0000 |
commit | 45f998293034f399ebf8c76ff41c8b9b55b86776 (patch) | |
tree | 1ad1c8b8e8a14f585591e9019ee79a62e0d190cc /source3/smbd/trans2.c | |
parent | 22e4d4e9d44577593d53ad84e77c9c078774d2e9 (diff) | |
download | samba-45f998293034f399ebf8c76ff41c8b9b55b86776.tar.gz samba-45f998293034f399ebf8c76ff41c8b9b55b86776.tar.bz2 samba-45f998293034f399ebf8c76ff41c8b9b55b86776.zip |
mangle.c: Fixed bug that caused string to run off the end of the mangled map.
server.c: Changed comparison from dname to name2 - seems correct - don't know why
I changed it originally. hmmmmm.
trans2.c: Made lanman2 code more similar to scan_directory(). I should
make the trans2 code call scan_dir as they are so similar.
Jeremy(jallison@whistle.com).
(This used to be commit 3909576849025ed21e5282abc892ae7582ee0275)
Diffstat (limited to 'source3/smbd/trans2.c')
-rw-r--r-- | source3/smbd/trans2.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index 8052924059..28bff08843 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -329,7 +329,8 @@ static int get_lanman2_dir_entry(int cnum,char *path_mask,int dirtype,int info_l strcpy(fname,dname); - if(mask_match(fname, mask, case_sensitive, True)) + if(name_map_mangle(fname,False,SNUM(cnum)) && + mask_match(fname, mask, case_sensitive, True)) { BOOL isdots = (strequal(fname,"..") || strequal(fname,".")); if (dont_descend && !isdots) @@ -341,7 +342,7 @@ static int get_lanman2_dir_entry(int cnum,char *path_mask,int dirtype,int info_l strcpy(pathreal,Connections[cnum].dirpath); if(needslash) strcat(pathreal,"/"); - strcat(pathreal,fname); + strcat(pathreal,dname); if (sys_stat(pathreal,&sbuf) != 0) { DEBUG(5,("get_lanman2_dir_entry:Couldn't stat [%s] (%s)\n",pathreal,strerror(errno))); @@ -368,13 +369,9 @@ static int get_lanman2_dir_entry(int cnum,char *path_mask,int dirtype,int info_l } } - - p = pdata; nameptr = p; - name_map_mangle(fname,False,SNUM(cnum)); - nt_extmode = mode ? mode : NT_FILE_ATTRIBUTE_NORMAL; switch (info_level) |