From 17fb3a2304d3f9eaa314c90b476d153b5f333f31 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Mon, 10 Aug 1998 20:12:53 +0000 Subject: Makefile.in: Fixed make clean bug with CVS directory in bin/. include/smb.h: Fixed bugs in Debug macro's with SGI compiler. smbd/trans2.c: Fixed bug reported by Zoltan Palmai PR#8903 where get_lanman2_dir_entry() could return a mangled name as a resume key and call_trans2findnext() wasn't doing the same. Jeremy. (This used to be commit 9d010e721c27af1d9498fd1e147993ba8ac8b41e) --- source3/smbd/trans2.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'source3/smbd') diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index 7f34187bd6..84cd99c91f 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -945,6 +945,16 @@ resume_key = %d resume name = %s continue=%d level = %d\n", SeekDir(dirptr, current_pos); dname = ReadDirName(dirptr); + + /* + * Remember, name_map_mangle is called by + * get_lanman2_dir_entry(), so the resume name + * could be mangled. Ensure we do the same + * here. + */ + + name_map_mangle( dname, False, SNUM(cnum)); + if(dname && strcsequal( resume_name, dname)) { SeekDir(dirptr, current_pos+1); @@ -963,6 +973,15 @@ resume_key = %d resume name = %s continue=%d level = %d\n", SeekDir(dirptr, start_pos); for(current_pos = start_pos; (dname = ReadDirName(dirptr)) != NULL; SeekDir(dirptr,++current_pos)) { + /* + * Remember, name_map_mangle is called by + * get_lanman2_dir_entry(), so the resume name + * could be mangled. Ensure we do the same + * here. + */ + + name_map_mangle( dname, False, SNUM(cnum)); + if(strcsequal( resume_name, dname)) { SeekDir(dirptr, current_pos+1); -- cgit