From 8f3e660270d9c1af268ba45118ab87740fbeeef8 Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Sun, 28 Dec 2008 04:41:38 +0000 Subject: [PATCH] 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. --- 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 be166be99f..9976d10ce7 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;