Date: Mon, 13 Sep 2004 19:54:19 -0700 From: Guy Harris <guy@alum.mit.edu> To: Riccardo Torrini <riccardo@torrini.org> Cc: freebsd-fs@freebsd.org Subject: Re: mount_smbfs timestamp problem Message-ID: <5FAFDA64-05F9-11D9-B631-000A958097E4@alum.mit.edu>
next in thread | raw e-mail | index | archive | help
> Any date&time will be rounded up to previous even second :-( It's probably using SMB_INFO_STANDARD rather than SMB_SET_FILE_BASIC_INFO as the information level in a TRANS2_SET_FILE_INFORMATION or TRANS2_SET_PATH_INFORMATION call. SMB_INFO_STANDARD uses DOS dates and times, which have 2-second resolution; SMB_SET_FILE_BASIC_INFO uses NT FILETIME values, which have 100-nanosecond resolution. The CIFS 1.0 spec only mentions SMB_SET_FILE_BASIC_INFO for TRANS2_SET_FILE_INFORMATION, not for TRANS2_SET_PATH_INFORMATION, but I would not be surprised if that weren't just an accidental omission (it's silly to have one work but not the other in, say, NT, although maybe the W95/W98/WMe server and file system code path is bizarre enough that only one of them works). If CAP_NT_SMBS is set in the NEGOTIATE reply, the SMB client should probably use SMB_SET_FILE_BASIC_INFO.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5FAFDA64-05F9-11D9-B631-000A958097E4>