3.2.5.14.11 Handling a Network Interfaces Response

If the Status field of the SMB2 header of the response indicates an error, the client MUST return the received status code to the calling application.

If the Status field of the SMB2 header of the response indicates success, from the list of network interfaces returned by the server, the client MUST use IfIndex to identify distinct interfaces on the server. The client MUST select network interfaces using implementation-specific<198> criteria. The client MUST extract IPv4Address and IPv6Address addresses from each selected NETWORK_INTERFACE_INFO structure and MUST set Connection.Server.AddressList to the received values.

For each address in Connection.Server.AddressList to which there is no existing connection, the client SHOULD<199> establish a new transport connection to the server by providing the address as the TransportIdentifier, as specified in section 3.2.4.2.1. On successful connection, the client MUST send SMB2 NEGOTIATE request on the new connection, as specified in section 3.2.4.2.2.2. If the SMB2 NEGOTIATE request is successful, the client MUST bind the current Session to the new connection as specified in section 3.2.4.2.3.