Answered by:
format of SMB2 ExtA requests in create

Question
-
Can anyone tell me what the format is for the ExtA requests in SMB2 create?
They seem to be similar to the "chained" extended attribute format which is what we call the format used in the old NTTrans Create call in SMB, but the SMB2 varient of this call seems to have additional alignment requirements. I have successfully created files on SMB2 with ExtA lists, but sometimes I get STATUS_INVALID_PARAMETER back which seems to indicate a badly formatted set of EAs. I also sometimes get STATUS_ACCESS_DENIED and this also seems to be related to the precise format of the EA list.
So what is the format exactly? I'd especially like to know what padding and alignment requirements the Windows SMB2 server puts on these EA lists.
The MS-SMB2 doc rather unhelpfully (in 2.2.13.2) says that the buffer needs to contain "extended attributes", but doesn't specify the format of give a link to any other doc.
Cheers, TridgeThursday, May 22, 2008 8:24 AM
Answers
-
Not an MS answer, but I believe that you can find the info you are looking for in another WSPP document MS-FSCC section 2.4.15 FileFullEaInformation. Section 3.2.4.3.3 of the MSB2 doc gives the reference.
Regards,
NeilTuesday, June 3, 2008 12:21 PM -
For the data buffer format of SMB2_CREATE_BUFFER_EA , please refer to FileFullEaInformation defined in [MS-FSCC] 2.4.15.
There are also several buffer alignment requirements regarding SMB2 EA context command you need to be aware of:
1. For a SMB2_CREATE_CONTEXT request, it must be 8-byte aligned.
(already documented in [MS-SMB2] 2.2.13.2)
2. Within a SMB2_CREATE_CONTEXT request, DataOffset must be 8-byte aligned
(already documented in [MS-SMB2] 2.2.13.2)
3. For EA lists within SMB2_CREATE_EA_BUFFER context data buffer, NextEntryOffset must be 4-byte aligned.
([MS-FSCC] 2.4.15 will be updated).
Please let us know if the problem is solved after meeting the alignment requirements above. If not, please capture network trace so we can do further investigation.
Thanks!
Thursday, June 5, 2008 10:08 PM
All replies
-
Thank you for the posting. We will work on your question and post the answer as soon as we are done with the investigation.
Tuesday, May 27, 2008 9:22 PM -
Not an MS answer, but I believe that you can find the info you are looking for in another WSPP document MS-FSCC section 2.4.15 FileFullEaInformation. Section 3.2.4.3.3 of the MSB2 doc gives the reference.
Regards,
NeilTuesday, June 3, 2008 12:21 PM -
For the data buffer format of SMB2_CREATE_BUFFER_EA , please refer to FileFullEaInformation defined in [MS-FSCC] 2.4.15.
There are also several buffer alignment requirements regarding SMB2 EA context command you need to be aware of:
1. For a SMB2_CREATE_CONTEXT request, it must be 8-byte aligned.
(already documented in [MS-SMB2] 2.2.13.2)
2. Within a SMB2_CREATE_CONTEXT request, DataOffset must be 8-byte aligned
(already documented in [MS-SMB2] 2.2.13.2)
3. For EA lists within SMB2_CREATE_EA_BUFFER context data buffer, NextEntryOffset must be 4-byte aligned.
([MS-FSCC] 2.4.15 will be updated).
Please let us know if the problem is solved after meeting the alignment requirements above. If not, please capture network trace so we can do further investigation.
Thanks!
Thursday, June 5, 2008 10:08 PM