HP-UX SNAplus2 R7 NOF Programmer's Guide
NOF API Verbs
QUERY_DIRECTORY_ENTRY
3.107 QUERY_DIRECTORY_ENTRY
QUERY_DIRECTORY_ENTRY returns information about resources in the directory database. It can return either
summary or detailed information, about a specific resource or multiple resources, depending on the options used.
If the verb is issued to a running node, it returns information both on resources that have been de
fined explicitly
(using DEFINE_DIRECTORY_ENTRY, or DEFINE_ADJACENT_LEN_NODE) and on resources that have been
located dynamically. If the node is not running, only explicitly defined entries are returned.
When the verb is issued to an end node, the directory contains only information about the end node and its resources,
and not about other nodes. The first entry returned is for the end node itself, followed by its LUs. (No entry is
returned for the end node’s network node server.)
When the verb is issued to a network node, the directory may contain information about multiple network nodes
and their associated end nodes and LUs. For each network node, the information returned is in the following order:
1. The network node.
2. The LUs owned by this node.
3. The first end node associated with the network node.
4. The LUs owned by this end node.
5. Any other end nodes associated with the network node, each followed by its LUs.
3.107.1 VCB Structure
typedef struct query_directory_entry
{
AP_UINT16 opcode; /* verb operation code */
unsigned char reserv2; /* reserved */
unsigned char format; /* reserved */
AP_UINT16 primary_rc; /* primary return code */
AP_UINT32 secondary_rc; /* secondary return code */
unsigned char *buf_ptr; /* pointer to buffer */
AP_UINT32 buf_size; /* buffer size */
AP_UINT32 total_buf_size; /* total buffer size required */
AP_UINT16 num_entries; /* number of entries */
AP_UINT16 total_num_entries; /* total number of entries */
unsigned char list_options; /* listing options */
unsigned char reserv3; /* reserved */
unsigned char resource_name[17]; /* network qualified resource */
/* name */
unsigned char reserv4; /* reserved */
AP_UINT16 resource_type; /* Resource type */
unsigned char parent_name[17]; /* parent name filter */
unsigned char reserv5; /* reserved */
AP_UINT16 parent_type; /* parent type */
unsigned char reserv6[24]; /* reserved */
} QUERY_DIRECTORY_ENTRY;
typedef struct directory_entry_summary
{
AP_UINT16 overlay_size; /* size of this entry */
unsigned char resource_name[17]; /* network qualified resource */
/* name */
unsigned char reserve1; /* reserved */
AP_UINT16 resource_type; /* Resource type */
391