DFSFreeLimboVolumeSpace

Requests DFS to free a number of limbo blocks on a volume

Local Servers:blocking
Remote Servers:N/A
NetWare Server:4.x, 5.x, 6.x
Platform:NLM
Service:Direct File System

Syntax

  #include <nwdfs.h>  
   
  LONG DFSFreeLimboVolumeSpace  (  
     LONG   volumeNumber,   
     LONG   numberOfBlocks); 
  

Parameters

volumeNumber
(IN) Specifies the volume number where the requested number of limbo blocks are to be freed.
numberOfBlocks
(IN) Specifies the number of limbo blocks requested to be freed.

Return Values

Decimal

Constant

Description

0

DFSNormalCompletion

The operation was completed as specified.

22

DFSInsufficientLimboFileSpace

The request could not be completed because there were not enough contiguous limbo blocks to complete the request successfully.

152

DFSInvalidVolume

The volume does not exist or is not mounted.

Remarks

This function requests the OS to free a number of limbo blocks on a given volume. This function performs the equivalent of a purge of one or more files until it has freed the requested number of blocks (or more). There is no guarantee that the OS can free as many blocks as requested by the caller, or that the blocks freed are contiguous. Also there is no way to guarantee that the blocks will be made available on a specific volume segment.

Other processes, including system functions, can acquire blocks that have just been freed before they can be allocated. The OS normally stripes allocation of files when multiple segments exist for a volume, so it can be very difficult to find a large contiguous area of free blocks on a volume where non-direct or normal files are allocated in multisegment volumes. Callers should be prepared to call this function multiple times.

See Also

DFSExpandFile