2.2.5.3.2 Response

This message MUST be sent by a server to respond to a client sending the TRANS_QUERY_NMPIPE_STATE subcommand request when the request is successful. The server MUST set an error code in the Status field of the SMB Header (section 2.2.3.1) of the response to indicate whether the read from the named pipe succeeded or failed.

 Trans_Parameters
   {
   SMB_NMPIPE_STATUS NMPipeStatus;
   }
            

SMB_Parameters: The SMB_Parameters section contains the relevant fields for the TRANS_QUERY_NMPIPE_STATE subcommand of the SMB_COM_TRANSACTION response.

WordCount (1 byte): This field MUST be set to 0x0A.

Words (20 bytes):

TotalParameterCount (2 bytes): This field MUST be set to 0x0002.

TotalDataCount (2 bytes): This field MUST be set to 0x0000.

ParameterCount (2 bytes): This field SHOULD be set to 0x0002.

ParameterDisplacement (2 bytes): This field SHOULD be set to 0x0000.

DataCount (2 bytes): This field MUST be set to 0x0000.

SetupCount (1 byte): This field MUST be set to 0x00.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

Trans_Parameters

Trans_Parameters (2 bytes):


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

NMPipeStatus

NMPipeStatus (2 bytes): A 16-bit field that shows the status of the named pipe. This field is formatted as an SMB_NMPIPE_STATUS (section 2.2.1.3).

Error Codes

SMB error class

SMB error code

NT status code

POSIX equivalent

Description

ERRDOS

(0x01)

ERRbadfid

(0x0006)

STATUS_INVALID_HANDLE

(0xC0000008L)

STATUS_SMB_BAD_FID

(0x00060001)

EBADF

Invalid FID.

ERRDOS

(0x01)

ERRnomem

(0x0008)

STATUS_INSUFF_SERVER_RESOURCES

(0xC0000205)

ENOMEM

The server is out of resources required to process the request.

ERRSRV

(0x02)

ERRerror

(0x0001)

STATUS_INVALID_SMB

(0x00010002)

Invalid SMB. Not enough parameter bytes were sent.

ERRSRV

(0x02)

ERRinvtid

(0x0005)

STATUS_INVALID_HANDLE

(0xC0000008L)

STATUS_SMB_BAD_TID

(0x00050002)

The TID is no longer valid.

ERRSRV

(0x02)

ERRbaduid

(0x005B)

STATUS_INVALID_HANDLE

(0xC0000008L)

STATUS_SMB_BAD_UID

(0x005B0002)

The UID supplied is not defined to the session.