F.GCAT - return the named substructure block.

Usage:

substruct = f.gcat( cat_blk, sub_name
                [, owner, permptr, who ] )

Where:

cat_blk
is the memory address of a type 0 or 1 catalog block describing the current catalog level. The named substructure will be found if it is contained on this block, or on any subsequent block in the chain of type 1 blocks.
sub_name
is the pointer to the two-word BCD name of the desired substructure.
owner
is a pointer to the two-word BCD userid of the owner of the catalog structure being searched. This is only needed if the substructure is located on a removable pack, and the PMC must be searched. If this value is not provided or is zero, it defaults to "&.uid".
permptr
is a pointer to a word containing permissions accumulated up to the catalog level being searched. This word is in the format described in "expl b syslib f.init". The new permissions are returned through this pointer. If this argument is missing or is zero, no permission checking is done.
who
is the userid to be used when checking permissions. If this is not supplied or is 0, the value "&.uid" is used.
substruct
is the memory address of the substructure's type 0 or type 2 catalog block.

Description:

F.GCAT is used to run down a catalog structure, optionally checking permissions. The current catalog level is searched, starting at the given type 0 or type 1 block, until the named structure is found or the chain to type 1 blocks is exhausted.

The original catalog block is not busied, and may be overwritten by a call to this function.

If the substructure is not found or resides on an unmounted removable pack, the negative of the appropriate FMS status is returned.

Copyright © 1996, Thinkage Ltd.