2.3.9.2 SMB2_DUPLICATE_EXTENTS_DATA_EX

A SMB2_DUPLICATE_EXTENTS_DATA_EX data element is defined as follows:


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

StructureSize

SourceFileID

...

...

...

SourceFileOffset

...

TargetFileOffset

...

ByteCount

...

Flags

Reserved

StructureSize (8 bytes): A 64-bit unsigned integer value that specifies the size of the structure, in bytes. This field MUST be set to 0x30.

SourceFileID (16 bytes): An SMB2_FILEID structure, as specified in [MS-SMB2] section 2.2.14.1, that is an identifier of the open to the source file.

SourceFileOffset (8 bytes): A 64-bit signed integer that contains the file offset, in bytes, of the start of a range of bytes in a source file from which the data is to be copied. The value of this field MUST be greater than or equal to 0x0000000000000000 and MUST be aligned to a logical cluster boundary.

TargetFileOffset (8 bytes): A 64-bit signed integer that contains the file offset, in bytes, of the start of a range of bytes in a target file to which the data is to be copied. The value of this field MUST be greater than or equal to 0x0000000000000000 and MUST be aligned to a logical cluster boundary.

ByteCount (8 bytes): A 64-bit signed integer that contains the number of bytes to copy from source to target. The value of this field MUST be greater than or equal to 0x0000000000000000 and MUST be aligned to a logical cluster boundary.

Flags (4 bytes): A 32-bit unsigned integer that contains zero or more of the following flag values. Flag values not specified in the following table SHOULD be set to 0 and MUST be ignored.

Value

Meaning

DUPLICATE_EXTENTS_DATA_EX_SOURCE_ATOMIC

0x00000001

Indicates that duplication is atomic from source point of view.

Reserved (4 bytes): This field SHOULD be set to zero and MUST be ignored.