共用方式為


2.2.4.9.2 Response

 SMB_Parameters
   {
   UCHAR  WordCount;
   Words
     {
     SMB_FILE_ATTRIBUTES FileAttributes;
     UTIME               LastWriteTime;
     ULONG               FileSize;
     USHORT              Reserved[5];
     }
   }
 SMB_Data
   {
   USHORT ByteCount;
   }
            


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

SMB_Parameters (21 bytes)

...

...

...

SMB_Data

SMB_Parameters (21 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

WordCount

Words (20 bytes)

...

...

...

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

Words (20 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

FileAttributes

LastWriteTime

...

FileSize

...

Reserved

...

...

FileAttributes (2 bytes): This field is a 16-bit unsigned bit field encoded as SMB_FILE_ATTRIBUTES (see section 2.2.1.2.4).

LastWriteTime (4 bytes): The time of the last write to the file.

FileSize (4 bytes): This field contains the size of the file, in bytes. Because this size is limited to 32 bits, this command is inappropriate for files whose size is too large.

Reserved (10 bytes): This field is reserved, and all entries MUST be set to 0x00.

SMB_Data (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

ByteCount

ByteCount (2 bytes): This field MUST be 0x0000. No data is sent by this message.

Error Codes

SMB error class

SMB error code

NT status code

POSIX equivalent

Description

ERRDOS

(0x01)

ERRbadfile

(0x0002)

STATUS_NO_SUCH_FILE

(0xC000000F)

ENOENT

The file does not exist.

ERRDOS

(0x01)

ERRbadpath

(0x0003)

STATUS_OBJECT_PATH_NOT_FOUND

(0xC000003A)

ENOENT

The file path syntax is invalid.

ERRDOS

(0x01)

ERRnoaccess

(0x0005)

STATUS_ACCESS_DENIED

(0xC0000022)

EPERM

Access denied.

ERRDOS

(0x01)

ERRnomem

(0x0008)

STATUS_INSUFF_SERVER_RESOURCES

(0xC0000022)

EPERM

Access denied.

ERRSRV

(0x02)

ERRerror

(0x0001)

STATUS_INVALID_SMB

(0x00010002)

Invalid SMB. Not enough parameter bytes were sent.

ERRSRV

(0x02)

ERRaccess

(0x0004)

STATUS_NETWORK_ACCESS_DENIED

(0xC00000CA)

The specified UID does not have permission to execute the requested command within the context of the TID.

ERRSRV

(0x02)

ERRinvtid

(0x0005)

STATUS_SMB_BAD_TID

(0x00050002)

The TID is no longer valid.

ERRSRV

(0x02)

ERRbaduid

(0x005B)

STATUS_SMB_BAD_UID

(0x005B0002)

The UID supplied is not known to the session.

ERRHRD

(0x03)

ERRnotready

(0x0015)

STATUS_NO_MEDIA_IN_DEVICE

(0x0xC0000013)

Share represents a removable device and there is no media present in the device.

ERRHRD

(0x03)

ERRdata

(0x0017)

STATUS_DATA_ERROR

(0xC000003E)

EIO

Disk I/O error.