2.2.2.2.2 Share Redirect Error Context Response
Servers which negotiate SMB 3.1.1 or higher can return this error context to a client in response to a tree connect request with the SMB2_TREE_CONNECT_FLAG_REDIRECT_TO_OWNER bit set in the Flags field of the SMB2 TREE_CONNECT request. The corresponding Status code in the SMB2 header of the response MUST be set to STATUS_BAD_NETWORK_NAME. The error context data is formatted as follows.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
StructureSize |
|||||||||||||||||||||||||||||||
NotificationType |
|||||||||||||||||||||||||||||||
ResourceNameOffset |
|||||||||||||||||||||||||||||||
ResourceNameLength |
|||||||||||||||||||||||||||||||
Reserved |
TargetType |
||||||||||||||||||||||||||||||
IPAddrCount |
|||||||||||||||||||||||||||||||
IPAddrMoveList (variable) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
ResourceName (variable) |
|||||||||||||||||||||||||||||||
... |
StructureSize (4 bytes): This field MUST be set to 48, indicating the size of this structure with a single MOVE_DST_IPADDR structure. This value is set regardless of the number of MOVE_DST_IPADDR structures returned and the length of ResourceName field.
NotificationType (4 bytes): This field indicates the notification type and MUST be set to 3 (SHARE_MOVE_NOTIFICATION) defined in [MS-SWN] section 2.2.2.4.
ResourceNameOffset (4 bytes): The offset from the start of this structure to the ResourceName field.
ResourceNameLength (4 bytes): The length of the share name provided in the ResourceName field, in bytes.
Reserved (2 bytes): This field MUST NOT be used and MUST be reserved. This field MUST be set to zero and MUST be ignored on receipt.
TargetType (2 bytes): This field indicates the target is an IP address and MUST be set to zero.
IPAddrCount (4 bytes): The number of MOVE_DST_IPADDR structures in the IPAddrMoveList field.
IPAddrMoveList (variable): Array of MOVE_DST_IPADDR structures, as specified in section 2.2.2.2.2.1.
ResourceName (variable): A Unicode string containing the share name.