Pseudocode for the operation is as follows:
If OutputBufferSize is smaller than BlockAlign(FieldOffset(FILE_NAME_INFORMATION.FileName) + 2, 4), the operation MUST be failed with STATUS_INFO_LENGTH_MISMATCH.
If Open.Link.ShortName is empty, the operation MUST be failed with STATUS_OBJECT_NAME_NOT_FOUND.
OutputBuffer MUST be constructed as follows:
OutputBuffer.FileNameLength set to the length, in bytes, of Open.Link.ShortName.
OutputBuffer.FileName set to Open.Link.ShortName.
Upon successful completion of the operation, the object store MUST return:
ByteCount set to FieldOffset(FILE_NAME_INFORMATION.FileName) + OutputBuffer.FileNameLength.
Status set to STATUS_SUCCESS.