diff options
author | Jeremy Allison <jra@samba.org> | 2006-09-15 09:06:36 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 11:51:48 -0500 |
commit | 315ad641c381b0630976eff711f251d1831ffc7c (patch) | |
tree | a7fbe238d309020de638a0d42f2ff8a2d78de261 /source3/smbd/trans2.c | |
parent | 8e7799889f58d89a5d38376b89ba1d4f6d8c4869 (diff) | |
download | samba-315ad641c381b0630976eff711f251d1831ffc7c.tar.gz samba-315ad641c381b0630976eff711f251d1831ffc7c.tar.bz2 samba-315ad641c381b0630976eff711f251d1831ffc7c.zip |
r18547: Add in fixes to mangling dir code - ensure don't
look in the paths for wcard - always read directly
from incoming packet.
Jeremy.
(This used to be commit 3745a1af4ea9262fcda28931539fa6ab4c9060d1)
Diffstat (limited to 'source3/smbd/trans2.c')
-rw-r--r-- | source3/smbd/trans2.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index f40dd5154b..adbba92ee7 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -957,16 +957,16 @@ static int call_trans2open(connection_struct *conn, char *inbuf, char *outbuf, i Case can be significant or not. **********************************************************/ -static BOOL exact_match(char *str,char *mask, BOOL case_sig) +static BOOL exact_match(connection_struct *conn, char *str, char *mask) { if (mask[0] == '.' && mask[1] == 0) return False; - if (case_sig) + if (conn->case_sensitive) return strcmp(str,mask)==0; if (StrCaseCmp(str,mask) != 0) { return False; } - if (ms_has_wild(str)) { + if (dptr_has_wild(conn->dirptr)) { return False; } return True; @@ -1132,7 +1132,7 @@ static BOOL get_lanman2_dir_entry(connection_struct *conn, pstrcpy(fname,dname); - if(!(got_match = *got_exact_match = exact_match(fname, mask, conn->case_sensitive))) + if(!(got_match = *got_exact_match = exact_match(conn, fname, mask))) got_match = mask_match(fname, mask, conn->case_sensitive); if(!got_match && check_mangled_names && @@ -1148,7 +1148,7 @@ static BOOL get_lanman2_dir_entry(connection_struct *conn, pstring newname; pstrcpy( newname, fname); mangle_map( newname, True, False, conn->params); - if(!(got_match = *got_exact_match = exact_match(newname, mask, conn->case_sensitive))) + if(!(got_match = *got_exact_match = exact_match(conn, newname, mask))) got_match = mask_match(newname, mask, conn->case_sensitive); } |