2.2.6.8.2 Response
For information levels greater than 0x100, the transaction response has one parameter word that SHOULD be ignored by the client.
Trans2_Parameters:
-
Trans2_Parameters { USHORT EaErrorOffset; }
-
EaErrorOffset (2 bytes): If Request.Trans2_Parameters.InformationLevel is not SMB_INFO_QUERY_EAS_FROM_LIST, this field MUST be zero (0x0000). If InformationLevel is SMB_INFO_QUERY_EAS_FROM_LIST, this field marks the offset to an extended attribute, the retrieval of which caused an error. This field MUST contain the offset, in bytes, to the SMB_GEA (section 2.2.1.2.1) entry in Trans2_Data.ExtendedAttributesList that caused the error, or zero (0x0000) if no error was encountered.
-
Trans2_Data:
-
The Trans2_Data block carries the structure of the information level specified by the request's Trans2_Parameters.InformationLevel field. Each information level's corresponding structure is specified in section 2.2.8.3.<147>
Error Codes:
SMB error class |
SMB error code |
NT status code |
POSIX equivalent |
Description |
---|---|---|---|---|
ERRDOS (0x01) |
ERRnoaccess (0x0005) |
STATUS_ACCESS_DENIED (0xC0000022) |
EPERM |
Access denied. |
ERRDOS (0x01) |
ERRbadfid (0x0006) |
STATUS_INVALID_HANDLE (0xC0000008) |
ENOENT |
The FID supplied is invalid. |
ERRDOS (0x01) |
ERRnomem (0x0008) |
STATUS_INSUFF_SERVER_RESOURCES (0xC0000205) |
ENOMEM |
The server is out of resources. |
ERRDOS (0x01) |
ERRgeneral (0x001F) |
STATUS_UNSUCCESSFUL (0xC0000001) |
|
The size of the extended attribute list is not correct. Check the EaErrorOffset field for the address of the SMB_GEA structure at which the error was detected. |
ERRDOS (0x01) |
ERRinvalidparam (0x0057) |
STATUS_INVALID_PARAMETER (0xC000000D) |
|
One of the extended attributes had an invalid Flag bit value. |
ERRDOS (0x01) |
ERRunknownlevel (0x007C) |
STATUS_OS2_INVALID_LEVEL (0x007C0001) |
|
The InformationLevel supplied is invalid, or the DataCount failed validation for the requested InformationLevel because not enough information was supplied by the client. |
ERRDOS (0x01) |
ERRbadealist (0x00FF) |
STATUS_OS2_EA_LIST_INCONSISTENT (0x00FF0001) STATUS_EA_LIST_INCONSISTENT (0x80000014) |
|
Inconsistent extended attribute list. |
ERRSRV (0x02) |
ERRerror (0x0001) |
STATUS_INVALID_SMB (0x00010002) |
|
Invalid SMB. Not enough parameter bytes were sent. |
ERRSRV (0x02) |
ERRinvtid (0x0005) |
STATUS_INVALID_HANDLE (0xC0000008) STATUS_SMB_BAD_TID (0x00050002) |
|
The TID is no longer valid. |
ERRSRV (0x02) |
ERRbaduid (0x005B) |
STATUS_INVALID_HANDLE (0xC0000008) STATUS_SMB_BAD_UID (0x005B0002) |
|
The UID supplied is not defined to the session. |
ERRHRD (0x03) |
ERRdata (0x0017) |
STATUS_DATA_ERROR (0xC000003E) |
EIO |
Disk I/O error. |