Compartir a través de


2.2.7.6.2 Response

The NT_TRANSACT_QUERY_SECURITY_DESC (section 2.2.7.6) response format is a special case of SMB_COM_NT_TRANSACT (section 2.2.4.62) SMB. Only the NT_TRANSACT_QUERY_SECURITY_DESC response format specifics are described here.

            
 NT_Trans_Parameters
   {
   ULONG LengthNeeded;
   }
            
 NT_Trans_Data
   {
   SECURITY_DESCRIPTOR SecurityDescriptor (variable);
   }
            


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

NT_Trans_Parameters

NT_Trans_Data (variable)

...

NT_Trans_Parameters (4 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

LengthNeeded

LengthNeeded (4 bytes): The length of the returned SecurityDescriptor field.

NT_Trans_Data (variable):


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

SecurityDescriptor (variable)

...

SecurityDescriptor (variable): The requested security descriptor structure. The self-relative form of a SECURITY_DESCRIPTOR structure is returned. For details, see SECURITY_DESCRIPTOR ([MS-DTYP] section 2.4.6).

Error Codes

SMB error class

SMB error code

NT status code

POSIX equivalent

Description

ERRDOS

(0x01)

ERRbadfid

(0x0006)

STATUS_INVALID_HANDLE

(0xC0000008)

EBADF

The FID is invalid.

ERRDOS

(0x01)

ERRnoaccess

(0x0005)

STATUS_ACCESS_DENIED

(0xC0000022)

EPERM

Access denied.

ERRDOS

(0x01)

ERRinvalidparam

(0x0057)

STATUS_INVALID_PARAMETER

(0xC000000D)

A parameter is invalid.

ERRSRV

(0x02)

ERRerror

(0x0001)

STATUS_INVALID_SMB

(0x00010002)

Invalid SMB. Byte count and sizes are inconsistent.

ERRSRV

(0x02)

ERRinvtid

(0x0005)

STATUS_SMB_BAD_TID

(0x00050002)

The TID is no longer valid.

ERRSRV

(0x02)

ERRnomem

(0x0008)

STATUS_INSUFF_SERVER_RESOURCES

(0xC0000205)

ENOMEM

The server is out of resources.

ERRSRV

(0x02)

ERRbaduid

(0x005B)

STATUS_SMB_BAD_UID

(0x005B0002)

The UID supplied is not defined to the session.

ERRSRV

(0x02)

ERRmoredata

(0x00EA)

STATUS_BUFFER_OVERFLOW

(0x80000005)

The number of bytes of changed data exceeds the MaxParameterCount field in the client request.

ERRHRD

(0x03)

ERRdata

(0x0017)

STATUS_DATA_ERROR

(0xC000003E)

EIO

Disk I/O error.