FS_QueryResourceInfo


FS_QueryResourceInfo(
 PIOREQ pir
 )

FS_QueryResourceInfo returns information about the resource in question. It returns the name of the resource and other relevant information. This routine handles the Win32 function GetVolumeInfo().

ir_rh

Supplies handle to the resource.

ir_options

Supplies the level of information requested.

Information Levels:

Level 0

Return the name of the resource. This request should be processed only by network FSDs. Local FSDs should fail this call.

Level 1

Return level 0 information and additional information about the resource type and status. This request should be processed only by network FSDs. Local FSDs should fail this call.

Level 2

Return information about the name of the filesystem on the resource and other filesystem specific information. This request should be processed by both network and local FSDs.


ir_ppath

Supplies a pointer to the buffer to contain the unicode name of the resource that is returned by the FSD. This field is a parameter only on the level 0 and 1 requests.

ir_data

Supplies pointer to a buffer where the filesystem name is to be returned. This field is supplied only for a level 2 request.

ir_length

Supplies the maximum length of the buffer the filesystem name is to be returned in. This field is supplied only for a level 2 request.

ir_user

Supplies user id for this request.

ir_pid

Supplies process id for this request.

ir_error

Returns status of the operation ( 0 if no error, errorcode otherwise ).

Level 0 Request

ir_ppath

Returns the name of the resource in unicode.

Level 1 Request

ir_ppath

Returns the name of the resource in unicode.

ir_options

Returns information about the status of the resource.


Resource Status Values:

Value

Meaning

RESSTAT_OK

Connection to resource is still valid.

RESSTAT_PAUSED

Connection to resource paused by workstation.

RESSTAT_DISCONN

Resource is disconnected.

RESSTAT_ERROR

Resource cannot be reconnected due to error.

RESSTAT_CONN

First connection to resource in progress.

RESSTAT_RECONN

Reconnection to resource in progress.


ir_flags

Returns connection resource type.


Connection Resource Type Values:

Value

Meaning

RESTYPE_WILD

Wild card resource type.

RESTYPE_DISK

Disk resource.

RESTYPE_SPOOL

Spooled printer resource.

RESTYPE_CHARDEV

Character device resource.

RESTYPE_IPC

Interprocess communication resource.


Level 2 Request

ir_length

Returns the maximum length of a single path component (excluding the NUL character) supported by the filesystem in the low word and the maximum length of the path (including the NUL character) supported by the filesystem in the high word.This value should be returned only on a level 2 request.

ir_options

Returns flags associated with the specified filesystem. This value should be returned only for a level 2 request.


Filesystem Flag Values:

Value

Meaning

FS_CASE_IS_PRESERVED

The case of the filename is preserved when it is stored on the disk.

FS_UNICODE_STORED_ON_DISK

The long filename is stored in unicode on the disk.

FS_VOL_SUPPORTS_LONG_NAMES

The filesystem supports long filenames on this volume.

FS_VOL_IS_COMPRESSED

The filesystem does data compression on this volume.


ir_pos

Returns the cache block size of the filesystem that is handling the volume.


Level 0 and 1 requests should be honoured only by network FSDs. Local FSDs should fail these requests with an ERROR_INVALID_FUNCTION.