on QUERY_PATH_INFO we need to reply with STATUS_OBJECT_NAME_INVALID. An XP workstation gives that back when a client requests the Zone.Identifier information of a file that is located on a FAT volume. Currently we reply STATUS_OBJECT_PATH_NOT_FOUND when we have no stream vfs module loaded. As a result an XP client thinks we *do* support streams and the property dialog allowes a user to modify "fileinfo" tab but saving them fails. Here's the relevant smbd log:
[2010/02/25 12:28:27.075171, 3] smbd/trans2.c:5083(call_trans2qfilepathinfo)
call_trans2qfilepathinfo: TRANSACT2_QPATHINFO: level = 1004
[2010/02/25 12:28:27.075202, 5] smbd/filename.c:169(unix_convert)
unix_convert called on file "Neu Textdokument.txt:Zone.Identifier"
[2010/02/25 12:28:27.075230, 10] smbd/statcache.c:275(stat_cache_lookup)
stat_cache_lookup: lookup succeeded for name [NEU TEXTDOKUMENT.TXT]
-> [Neu Textdokument.txt]
[2010/02/25 12:28:27.075264, 10] smbd/filename.c:1062(build_stream_path)
comparing [:Zone.Identifier] and [::$DATA]: not equal
[2010/02/25 12:28:27.075288, 3] smbd/vfs.c:851(check_reduced_name)
check_reduced_name [Neu Textdokument.txt] [/storage/disk1]
[2010/02/25 12:28:27.075325, 10] smbd/vfs.c:938(check_reduced_name)
check_reduced_name realpath [Neu Textdokument.txt] ->
[2010/02/25 12:28:27.075349, 3] smbd/vfs.c:1008(check_reduced_name)
check_reduced_name: Neu Textdokument.txt reduced to
[2010/02/25 12:28:27.075372, 3] smbd/trans2.c:5192(call_trans2qfilepathinfo)
call_trans2qfilepathinfo: SMB_VFS_STAT of Neu
Textdokument.txt:Zone.Identifier failed (No such file or directory)
[2010/02/25 12:28:27.075414, 3] smbd/error.c:80(error_packet_set)
error packet at smbd/trans2.c(5194) cmd=50 (SMBtrans2)
When the client gets STATUS_OBJECT_NAME_INVALID the "fileinfo" tab does not show up.
Created attachment 5421 [details]
sniff of a XP client requesting stream info of a file where streams are not supported (on FAT)
the sniff is for reference (XP agains XP)
is there a chance to get this fixed for 3.5.2 ?
Volker, can this be fixed ?
Jeremy, do you have the time to look into fixing this?