This program lets you query a volume for its sub-allocation, compression, data migration and immediate purge flags.
#include <errno.h>
#include <nit/nwdir.h>
#include <nwerrno.h>
#include <nwfileio.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main( int argc, char* argv[]) {
int volumeNumber;
LONG flags;
if ( argc != 2) {
puts( "Usage: VolFlags <volume name>");
return EXIT_FAILURE;
}
if ( GetVolumeNumber( argv[ 1], &volumeNumber) != 0) {
puts( "GetVolumeNumber failed");
return EXIT_FAILURE;
}
if ( NWGetVolumeFlags(( LONG) volumeNumber, &flags) == -1) {
printf( "NWGetVolumeFlags failed, %s (%d), NetWareErrno = %d\n",
strerror( errno), errno, NetWareErrno);
return EXIT_FAILURE;
}
printf( "%s:%s%s%s%s\n",
argv[ 1],
flags & SUB_ALLOCATION_FLAG ? " SUB_ALLOCATION_FLAG" : "",
flags & FILE_COMPRESSION_FLAG ? " FILE_COMPRESSION_FLAG" : "",
flags & DATA_MIGRATION_FLAG ? " DATA_MIGRATION_FLAG" : "",
flags & VOLUME_IMMEDIATE_PURGE_FLAG ? " VOLUME_IMMEDIATE_PURGE_FLAG" : "");
return EXIT_SUCCESS;
}
© 2008 Novell, Inc. All Rights Reserved.