2.3.2 CommonNetworkRelativeLink

The CommonNetworkRelativeLink structure specifies information about the network location where a link target is stored, including the mapped drive letter and the UNC path prefix. For details on UNC paths, see [MS-DFSNM] section 2.2.1.4.


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

CommonNetworkRelativeLinkSize

CommonNetworkRelativeLinkFlags

NetNameOffset

DeviceNameOffset

NetworkProviderType

NetNameOffsetUnicode (optional)

DeviceNameOffsetUnicode (optional)

NetName (variable)

...

DeviceName (variable)

...

NetNameUnicode (variable)

...

DeviceNameUnicode (variable)

...

CommonNetworkRelativeLinkSize (4 bytes): A 32-bit, unsigned integer that specifies the size, in bytes, of the CommonNetworkRelativeLink structure. This value MUST be greater than or equal to 0x00000014. All offsets specified in this structure MUST be less than this value, and all strings contained in this structure MUST fit within the extent defined by this size.

CommonNetworkRelativeLinkFlags (4 bytes): Flags that specify the contents of the DeviceNameOffset and NetProviderType fields.


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

A

B

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

Where the bits are defined as:

Value

Description

A

ValidDevice

If set, the DeviceNameOffset field contains an offset to the device name.

If not set, the DeviceNameOffset field does not contain an offset to the device name, and its value MUST be zero.

B

ValidNetType

If set, the NetProviderType field contains the network provider type.

If not set, the NetProviderType field does not contain the network provider type, and its value MUST be zero.

NetNameOffset (4 bytes): A 32-bit, unsigned integer that specifies the location of the NetName field. This value is an offset, in bytes, from the start of the CommonNetworkRelativeLink structure.

DeviceNameOffset (4 bytes): A 32-bit, unsigned integer that specifies the location of the DeviceName field. If the ValidDevice flag is set, this value is an offset, in bytes, from the start of the CommonNetworkRelativeLink structure; otherwise, this value MUST be zero.

NetworkProviderType (4 bytes): A 32-bit, unsigned integer that specifies the type of network provider. If the ValidNetType flag is set, this value MUST be one of the following; otherwise, this value MUST be ignored.

Vendor name

Value

WNNC_NET_AVID

0x001A0000

WNNC_NET_DOCUSPACE

0x001B0000

WNNC_NET_MANGOSOFT

0x001C0000

WNNC_NET_SERNET

0x001D0000

WNNC_NET_RIVERFRONT1

0X001E0000

WNNC_NET_RIVERFRONT2

0x001F0000

WNNC_NET_DECORB

0x00200000

WNNC_NET_PROTSTOR

0x00210000

WNNC_NET_FJ_REDIR

0x00220000

WNNC_NET_DISTINCT

0x00230000

WNNC_NET_TWINS

0x00240000

WNNC_NET_RDR2SAMPLE

0x00250000

WNNC_NET_CSC

0x00260000

WNNC_NET_3IN1

0x00270000

WNNC_NET_EXTENDNET

0x00290000

WNNC_NET_STAC

0x002A0000

WNNC_NET_FOXBAT

0x002B0000

WNNC_NET_YAHOO

0x002C0000

WNNC_NET_EXIFS

0x002D0000

WNNC_NET_DAV

0x002E0000

WNNC_NET_KNOWARE

0x002F0000

WNNC_NET_OBJECT_DIRE

0x00300000

WNNC_NET_MASFAX

0x00310000

WNNC_NET_HOB_NFS

0x00320000

WNNC_NET_SHIVA

0x00330000

WNNC_NET_IBMAL

0x00340000

WNNC_NET_LOCK

0x00350000

WNNC_NET_TERMSRV

0x00360000

WNNC_NET_SRT

0x00370000

WNNC_NET_QUINCY

0x00380000

WNNC_NET_OPENAFS

0x00390000

WNNC_NET_AVID1

0X003A0000

WNNC_NET_DFS

0x003B0000

WNNC_NET_KWNP

0x003C0000

WNNC_NET_ZENWORKS

0x003D0000

WNNC_NET_DRIVEONWEB

0x003E0000

WNNC_NET_VMWARE

0x003F0000

WNNC_NET_RSFX

0x00400000

WNNC_NET_MFILES

0x00410000

WNNC_NET_MS_NFS

0x00420000

WNNC_NET_GOOGLE

0x00430000

NetNameOffsetUnicode (4 bytes): An optional, 32-bit, unsigned integer that specifies the location of the NetNameUnicode field. This value is an offset, in bytes, from the start of the CommonNetworkRelativeLink structure. This field MUST be present if the value of the NetNameOffset field is greater than 0x00000014; otherwise, this field MUST NOT be present.

DeviceNameOffsetUnicode (4 bytes): An optional, 32-bit, unsigned integer that specifies the location of the DeviceNameUnicode field. This value is an offset, in bytes, from the start of the CommonNetworkRelativeLink structure. This field MUST be present if the value of the NetNameOffset field is greater than 0x00000014; otherwise, this field MUST NOT be present.

NetName (variable): A NULL–terminated string, as defined by the system default code page, which specifies a server share path; for example, "\\server\share".

DeviceName (variable): A NULL–terminated string, as defined by the system default code page, which specifies a device; for example, the drive letter "D:".

NetNameUnicode (variable): An optional, NULL–terminated, Unicode string that is the Unicode version of the NetName string. This field MUST be present if the value of the NetNameOffset field is greater than 0x00000014; otherwise, this field MUST NOT be present.

DeviceNameUnicode (variable): An optional, NULL–terminated, Unicode string that is the Unicode version of the DeviceName string. This field MUST be present if the value of the NetNameOffset field is greater than 0x00000014; otherwise, this field MUST NOT be present.