IBM OS/2 LAN Server REXX Utility DLL


Inf-HTML [About][Toc][Index] 0.9b (c) 1995 Peter Childs


NETDASD Enumerate (LS40)

The function returns a list of directories that have had directory limits 
applied to them. Before this function can be used successfully, directory 
limits must be enabled on the 386-HPFS drive. (See the 
NetMisc(NETDASDCONTROL) function)   
Syntax 


MyRc = NetEnumerate(NETDASD, 'DASDInfo', SrvName)

  
Parameters 
The parameters required and returned are: 
'DASDInfo'  The directory limits information variable, which is divided 
            into: 
   o DASDInfo.DirPath 
     A string containing the directory path to be enumerated The string 
     must be directory path, beginning with the drive letter, and only 
     ending with a backslash when a root directory is specified. 
     If DASDInfo.DirPath is set to '', the function returns all root 
     directories and subdirectories with directory limits for each logical 
     386-HPFS drive. 
     If a redirected drive is specified for DASDInfo.DirPath, the SrvName 
     parameter must be '' 
   o DASDInfo.BufferSize 
     This is a internal workbuffer to hold the directory limits. It is 
     used to limit the amount of returned directory limits 
   o DASDInfo.recursive 
     A varaible controlling recursive enumeration. The values are: 

     Value Meaning
     ----- -------
       0   Return directory limit for the
           directory specified only
     
       1   Return all directory limits for
           the directory specified and all
           subdirectories
     
     
     The default value is 0 
   o DASDInfo.count 
     The number of directory limits returned. The variable i has a value 
     from 1 to DASDInfo.count for the following parameters 
   o DASDInfo.EntriesAvail 
     This is a parameter returned to indicate if there where more data 
     available with the Buffer Size specified 
     If the value is larger then DASDInfo.count then more data than 
     BufferSize was available. Otherwise the BufferSize was sufficient for 
     to hold all directory limits retrieved 
   o DASDInfo.i.resource_name 
     The relative name of the directory having a directory limit. For the 
     base path itself, the value '' is returned. The folowing directory 
     entries are all relative to the base path (DASDInfo.DirPath) 
   o DASDInfo.i.max 
     The amount of disk space allotted to this directory by directory 
     eimits. Specified in KB, this field can be set from 1 to 67108863. 
   o DASDInfo.i.use 
     The amount (in KB) of disk space already occupied within the 
     specified directory resource 
   o DASDInfo.i.thresh 
     The initial alert threshold as a percentage of the total directory 
     limit space allotted, with values ranging from 0 to 99. Zero 
     specifies that no threshold alert is to be generated, and 99 
     specifies that an alert is generated when 99% of the allotted 
     directory limit for this directory has been reached. 
   o DASDInfo.i.delta 
     The increment in which alerts are to be generated after the 
     DASDInfo.i.thresh threshold has been crossed, but before all of the 
     allotted disk space has been used. 
SrvName     The computer name of the server to enumerate the directory 
            limits on 
  
Note 
The server computer name can be specified as '' for a local server.   
Example   


/* Enumerate DASD directory limit on server */
call RxFuncAdd 'LoadLsRxutFuncs', 'LSRXUT', 'LoadLsRxutFuncs'
call LoadLsRxutFuncs

NETDASD             = 750
DASDInfo.DirPath    = 'D:\APPS\DATA'
DASDInfo.recursive  = 1
DASDInfo.BufferSize = 4096
SrvName             = '\\DOMAIN_CONTRLR'

myRc = NetEnumerate(NETDASD, 'DASDInfo', SrvName)

if myRc <> '0' then do
 say 'Got error from NetEnumerate() ' myRc
 exitRc = 9
end
else do
 say 'Directory limit enumeration returned'
 say 'Number entries available' DASDInfo.EntriesAvail
 say 'Number entries returned ' DASDInfo.count
 say 'First dir path          ' DASDInfo.1.resource_name
 say 'First limit size        ' DASDInfo.1.max
 say 'First limit usage       ' DASDInfo.1.use
 say 'Threshold               ' DASDInfo.1.thresh
 say 'Delta                   ' DASDInfo.1.delta

 exitRc = 0
end

call DropLsRxutFuncs
call RxFuncDrop 'LoadLsRxutFuncs'

exit exitRc

  
Example Output   


Directory limit enumeration returned
Number entries available   1
Number entries returned    1
First dir path
First limit size           512
First limit usage          102
Threshold                  90
Delta                      5



Inf-HTML End Run - Successful