volume_info

Contains volume information

Service:NetWare Platform

Structure

  #include <monitor.h>
  
  #define MAX_VOLUME_NAME_LEN      31
  
  struct volume_info
  {
     int        which;
     uint32_t   flags;
     char       name[MAX_VOLUME_NAME_LEN+1];
     uint32_t   SectorSize;
     uint32_t   SectorsPerCluster;
     uint32_t   VolumeSizeInClusters;
     uint32_t   FreedClusters;
     uint32_t   SubAllocFreeableClusters;
     uint32_t   FreeableLimboSectors;
     uint32_t   NonFreeableLimboSectors;
     uint32_t   NonFreeableAvailableSubAllocSectors;
     uint32_t   NotUsableSubAllocSectors;
     uint32_t   SubAllocClusters;
     uint32_t   DataStreamsCount;
     uint32_t   LimboDataStreamsCount;
     uint32_t   OldestDeletedFileAgeInTicks;
     uint32_t   CompressedDataStreamsCount;
     uint32_t   CompressedLimboDataStreamsCount;
     uint32_t   UnCompressableDataStreamsCount;
     uint32_t   PreCompressedSectors;
     uint32_t   CompressedSectors;
     uint32_t   MigratedFiles;
     uint32_t   MigratedSectors;
     uint32_t   ClustersUsedByFAT;
     uint32_t   ClustersUsedByDirectories;
     uint32_t   ClustersUsedByExtendedDirectories;
     uint32_t   TotalDirectoryEntries;
     uint32_t   UnUsedDirectoryEntries;
     uint32_t   TotalExtendedDirectoryExtants;
     uint32_t   UnUsedExtendedDirectoryExtants;
     uint32_t   ExtendedAttributesDefined;
     uint32_t   ExtendedAttributeExtantsUsed;
     uint32_t   DirectoryServicesObjectID;
     uint32_t   VolumeLastModifiedDateAndTime;
     int        mounted;
     uint64_t   BlockCount;
     uint64_t   BlockFree;
     uint64_t   BlockSize;
     uint32_t   reserved[58];
  };
  

Fields

which

Specifies a unique numeric value for the volume.

flags

Uses a bit mask to specify the type of volume. The mask can contain the following flags:

Flag

Value

Description

VOL_NSS_PRESENT

0x10000000

The volume is an NSS volume. If not present, the volume is a traditional file system volume.

VOL_NS_MACINTOSH

0x00000001

Macintosh name space is enabled.

VOL_NS_NFS

0x00000002

NFS name space is enabled.

VOL_NS_FTAM

0x00000004

FTAM name space is enabled.

VOL_NS_LONG

0x00000008

OS/2 name space is enabled.

VOL_NS_NT

0x00000010

Windows NT name space is enabled.

VOL_NS_PRIMARY

0x00000020

VOL_READ_ONLY

0x00000100

The volume is a read-only volume.

VOL_COMPRESSION_ENABLED

0x00000200

Compression is enabled.

VOL_SUBALLOC_ENABLED

0x00000400

Suballocation is enabled.

VOL_IS_MIGRATABLE

0x00000800

Migration is enabled.

name

Specifies the volume name. A volume name can be up to 31 characters.

SectorSize

Specifies the sector size, in bytes.

SectorsPerCluster

Specifies the number of sectors in a cluster.

VolumeSizeInClusters

Specifies the size of the volume, in clusters.

FreedClusters

Specifies the number of clusters that are currently free for allocation. This number does not include space that is currently available from deleted (limbo) files, nor space the could be reclaimed from the suballocation file system.

SubAllocFreeableClusters

Specifies the space that could be reclaimed from the suballocation file system.

FreeableLimboSectors

Specifies the disk space that could be freed from deleted files, in sectors.

NonFreeableAvailableSubAllocSectors

Specifies the space that is available to the suballocation file system but is not freeable to return as sectors.

NotUsableSubAllocSectors

Specifies the disk space that is wasted by the suballocation file system. These sectors cannot be allocated by the suballocation file system or used as regular sectors.

SubAllocClusters

Specifies the disk space that is being used by the suballocation file system.

DataStreamsCount

Specifies the number of data streams that are available for real files that have data allocated to them.

LimboDataStreamsCount

Specifies the number of data streams that are available for deleted files that have data allocated to them.

OldestDeletedFileAgeInTicks

Specifies the current age of the oldest file, in ticks.

CompressedDataStreamsCount

Specifies the number of data streams that are being used for compressed real files.

CompressedLimboDataStreamsCount

Specifies the number of data streams that are being used for compressed deleted files.

UncompressableDataStreamsCount

Specifies the number of data streams that were found and are not compressible (real and deleted).

PreCompressedSectors

Specifies the disk space that was allocated to all files before they were compressed (includes “hole” space).

CompressedSectors

Specifies that disk space that is being used by all compressed files.

MigratedFiles

Specifies the number of files that are migrated.

MigratedSectors

Specifies the number of sectors that are migrated.

ClustersUsedByFAT

Specifies the disk space that is being used by the FAT table, in clusters.

ClustersUsedByDirectories

Specifies the disk space that is being used by directories, in clusters.

ClustersUsedByExtendedDirectories

Specifies the disk space that is being used by the extended directory space, in clusters.

TotalDirectoryEntries

Specifies the total number of directories that are available on the volume.

UnUsedDirectoryEntries

Specifies the total number of directory entries that are unused on the volume.

TotalExtendedDirectoryExtants

Specifies the amount of extended directory space extants (128 bytes each) that are available on the volume.

UnUsedExtendedDirectoryExtants

Specifies the amount of extended directory space extants (128 bytes each) that are unused on the volume.

ExtendedAttributesDefined

Specifies the number of extended attributes that are defined on the volume.

ExtendedAttributeExtantsUsed

Specifies the number of extended directory extants that are used by the extended attributes.

DirectoryServicesObjectID

Specifies the eDirectory ID for the volume.

VolumeLastModifiedDateAndTime

Specifies the last time that any file or subdirectory within the volume was modified (as tracked by the OS).

mounted

Indicates whether the volume is currently mounted.

BlockCount

Specifies the total number of blocks in the volume.

BlockFree

Specifies the number of blocks that are free in the volume.

BlockSize

Specifies the size of block the volume is using.

reserved

Reserved for future use.