2.4.16 FileHardLinkInformation

This information class is used locally to query hard links to an existing file.<108> At least one name MUST be returned.

A FILE_LINKS_INFORMATION data element, defined as follows, is returned to the caller.


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

BytesNeeded

EntriesReturned

Entries (variable)

...

BytesNeeded (4 bytes):  A 32-bit unsigned integer that MUST contain the number of bytes needed to hold all available names. This field MUST NOT be 0.

EntriesReturned (4 bytes): A 32-bit unsigned integer that MUST contain the number of FILE_LINK_ENTRY_INFORMATION structures that have been returned in the Entries field.

The query MUST return as many entries as will fit in the supplied output buffer. A value of 0x00000000 for this field indicates that there is insufficient room to return any entry. The error STATUS_BUFFER_OVERFLOW (0x80000005) indicates that not all available entries were returned.

Entries (variable):  A buffer that MUST contain the returned FILE_LINK_ENTRY_INFORMATION structures. It MUST be BytesNeeded bytes in size to return all of the available entries.

This operation returns a status code as specified in section 2.2. Upon success, the status code returned by the function that processes this file information class is STATUS_SUCCESS. The most common error codes are listed in the following table.

Error code

Meaning

STATUS_NOT_SUPPORTED

0xC00000BB

The request is not supported.

STATUS_BUFFER_OVERFLOW

0x80000005

The output buffer was filled before all of the link information could be returned. Only complete FILE_LINK_ENTRY_INFORMATION structures are returned.

STATUS_INFO_LENGTH_MISMATCH

0xC0000004

The specified information record length does not match the length that is required for the specified information class.