3.2.5.37 Receiving an SMB_COM_OPEN_PRINT_FILE Response

The SMB_COM_OPEN_PRINT_FILE Response (section 2.2.4.62.2) MUST be processed as specified in section 3.2.5.1.

If the SMB_COM_OPEN_PRINT_FILE (section 2.2.4.67) command fails, the error status MUST be passed to the application.

If the request succeeds, the FID returned in the SMB_COM_OPEN_PRINT_FILE Response MUST be returned to the application. The FID MUST also be used to create a new entry in Client.Connection.OpenTable. If an OpLock was requested, the value of Client.Open.OpLock MUST be set to indicate the type of OpLock that was granted, if any. Client.Open.TreeConnect MUST be set to Client.Connection.TreeConnectTable[TID], where the TID matches the TID field sent by the server in the SMB Header (section 2.2.3.1) of the SMB_COM_OPEN_PRINT_FILE Response. Client.Open.Session MUST be set to a Client.Session where Client.Session.SessionUID matches the UID sent by the server in the SMB Header of the SMB_COM_OPEN_PRINT_FILE Response. Client.Open.Connection MUST be set to Client.Open.Session.Connection.

The Client.Open matching the FID provided in the response MUST be returned to the application.