From b74cf71aedb87419fa8185e2e0cbb279e035cf42 Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Sun, 28 Dec 2008 04:41:48 +0000 Subject: [PATCH] DEVEL15-windows-smb-fs-attr-info-20081227 LICENSE MIT even though the docs for FILE_FS_ATTRIBUTE_INFORMATION state that the MaximumComponentNameLength field is in bytes, it turns out that Windows SMB servers return the value in characters. Reduce the reported value to 255 to match NTFS. (cherry picked from commit 8f3e660270d9c1af268ba45118ab87740fbeeef8) --- src/WINNT/afsd/smb3.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/src/WINNT/afsd/smb3.c b/src/WINNT/afsd/smb3.c index be166be99..9976d10ce 100644 --- a/src/WINNT/afsd/smb3.c +++ b/src/WINNT/afsd/smb3.c @@ -2757,15 +2757,8 @@ long smb_ReceiveTran2QFSInfo(smb_vc_t *vcp, smb_tran2Packet_t *p, smb_packet_t * /* The maxCompLength is supposed to be in bytes */ #ifdef SMB_UNICODE qi.u.FSattributeInfo.attributes |= 0x04; - - if ((vcp->flags & SMB_VCFLAG_USEUNICODE) == SMB_VCFLAG_USEUNICODE) - qi.u.FSattributeInfo.maxCompLength = MAX_PATH * sizeof(wchar_t); - else { -#endif - qi.u.FSattributeInfo.maxCompLength = MAX_PATH; -#ifdef SMB_UNICODE - } #endif + qi.u.FSattributeInfo.maxCompLength = 255; smb_UnparseString(op, qi.u.FSattributeInfo.FSname, _C("AFS"), &sz, SMB_STRF_IGNORENUL); qi.u.FSattributeInfo.FSnameLength = sz; -- 2.39.5