summaryrefslogtreecommitdiff
path: root/source3/smbd/trans2.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/smbd/trans2.c')
-rw-r--r--source3/smbd/trans2.c9
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)