2.3.3.1.1.3.1 TargetEntryBLOB

The TargetEntryBLOB holds metadata for the DFS target of a root or a link.


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

TargetEntrySize

TargetTimeStamp

...

TargetState

TargetType

ServerNameSize

ServerName (variable)

...

ShareNameSize

ShareName (variable)

...

TargetEntrySize (4 bytes): The size, in bytes, of this target entry, starting from the TargetTimeStamp field, and stored as an unsigned, 32-bit, little-endian integer.

TargetTimeStamp (8 bytes): If bits 9 through 63 contain nonzero values, this field encodes the last modification time of this target entry, stored as FILETIME, as specified in [MS-DTYP] section 2.3.3. In this case the PriorityRank and PriorityClass members, discussed below, are considered to logically contain zero if referenced by an implementation.

If bits 9 through 63 are zero, the 64 bits of the TargetTimeStamp has the following format:


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

PriorityRank

PriorityClass

High56Bits

...

PriorityRank (5 bits): The priority rank of a target, ranging in value from 0x00 to 0x1F, where 0x00 is the highest rank.

PriorityClass (3 bits): The priority class of a target. One of the following values.

Value

Meaning

DFS_TARGET_PRIORITY_CLASS_SITE_COST_NORMAL

0x0

See DfsSiteCostNormalPriorityClass in section 2.2.2.8.

DFS_TARGET_PRIORITY_CLASS_GLOBAL_HIGH

0x1

See DfsSGlobalHighPriorityClass in section 2.2.2.8.

DFS_TARGET_PRIORITY_CLASS_SITE_COST_HIGH

0x2

See DfsSiteCostHighPriorityClass in section 2.2.2.8

DFS_TARGET_PRIORITY_CLASS_SITE_COST_LOW

0x3

See DfsSiteCostLowPriorityClass in section 2.2.2.8

DFS_TARGET_PRIORITY_CLASS_GLOBAL_LOW

0x4

see DfsGlobalLowPriorityClass in section 2.2.2.8

High56Bits (7 bytes): Set to zero.

TargetState (4 bytes): The state of this target, stored as an unsigned, 32-bit, little-endian integer. The mask 0x0000000F is used to extract a bit field that contains one of the following valid state values.

Value

Meaning

DFS_STORAGE_STATE_OFFLINE

0x00000001

This target is offline and unavailable for use.

DFS_STORAGE_STATE_ONLINE

0x00000002

This target is online and available for use.

DFS_STORAGE_STATE_ACTIVE

0x00000004

This target is active.

TargetType (4 bytes): The type of target, stored as an unsigned, 32-bit, little-endian integer bit field. This SHOULD be set to 0x00000002.<16>

ServerNameSize (2 bytes): The size, in bytes, of the ServerName field, stored as an unsigned 16-bit, little-endian integer.

ServerName (variable): An array of Unicode characters that contains the DFS target server host name. The size of the array is given in the ServerNameSize field.

ShareNameSize (2 bytes): The size, in bytes, of the ShareName, stored as an unsigned, 16-bit, little-endian integer.

ShareName (variable): An array of Unicode characters that contains the DFS target share name.