I noticed that if I'm using MS Access 97 on a NT4 machine I can't access to database files witch are in directories >12 chars, but if I do the same thing on an w2k or NT4 server is works.
I see that the respond to the query alt file name call send a mangle name in unicode with termination.
but the windows servers didn't send the termination
I also wonder why we set the LONG FILE NAMES are in use flag in the SMB HEADER flags2
this is also different to windows...
I attache a small patch and a view sniffs
metze
-----------------------------------------------------------------------------
Stefan "metze" Metzmacher <[EMAIL PROTECTED]>
diff -Npur --exclude=CVS --exclude=*.bak --exclude=*.o --exclude=*.po --exclude=.#*
HEAD/source/smbd/trans2.c HEAD-fix/source/smbd/trans2.c
--- HEAD/source/smbd/trans2.c Thu Dec 5 09:43:44 2002
+++ HEAD-fix/source/smbd/trans2.c Thu Jan 9 17:04:50 2003
@@ -1794,7 +1794,9 @@ static int call_trans2qfilepathinfo(conn
if(!mangle_is_8_3(short_name, True)) {
mangle_map(short_name,True,True,SNUM(conn));
}
- len = srvstr_push(outbuf, pdata+4, short_name, -1,
STR_TERMINATE|STR_UPPER);
+
+ len = srvstr_push(outbuf, pdata+4, short_name, -1, STR_UPPER);
+
data_size = 4 + len;
SIVAL(pdata,0,len);
break;
msaccess-failed.cap
Description: Binary data
msaccess-fine.cap
Description: Binary data
msaccess-file-fine2.cap
Description: Binary data
