[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]

Technical Reference: Communications, Volume 1

lb_$lookup_object Library Routine (NCS)


Looks up information about an object in the Global Location Broker (GLB) database.


void lb_$lookup_object ( object, lookup_handle)
void lb_$lookup_object ( max_results, num_results, results, status)
uuid_$t *object;
lb_$lookup_handle_t *lookup_handle;
unsigned long max_results;

unsigned long *num_results;
lb_$entry_t results [ ];
status_$t *status;


The lb_$lookup_object routine returns GLB database entries whose fields in the object parameter match the specified object. It returns information about all replicas of an object and all interfaces to the object.

The lb_$lookup_object routine cannot return more than the number of matching entries specified by max_results parameter at one time. The lookup_handle parameter directs this routine to do sequential lookup calls to find all matching entries.

  1. The Location Broker does not prevent modification of the database between lookup calls, which can cause the locations of entries relative to a value of the lookup_handle parameter to change. If multiple calls are made to find all matching results in the database, the returned information may skip or duplicate entries from the database.
  2. It is also possible for the results of a single lookup call to skip or duplicate entries. This can occur if the size of the results exceeds the size of a remote procedure call (RPC) packet (64KB).



object Points to the Universal Unique Identifier (UUID) of the object being looked up.
max_results Specifies the maximum number of matching entries that can be returned by a single call. This should be the number of elements in the results parameter array.


lookup_handle Specifies a location in the database. On input, the value of the lookup_handle parameter indicates the location in the database where the search begins. An input value of lb_$default_lookup_handle specifies that the search starts at the beginning of the database.
  On return, the lookup_handle parameter indicates the next unsearched part of the database (that is, the point at which the next search should begin). A return value of lb_$default_lookup_handle indicates that the search reached the end of the database. Any other value indicates that the search found at most the number of matching entries specified by the max_results parameter before it reached the end of the database.


num_results Points to the number of entries that were returned in the results parameter array.
results Specifies the array that contains the matching GLB database entries, up to the number specified in the max_results parameter. If the array contains any entries for servers on the local network, those entries appear first.
status Points to the completion status.


To look up GLB database entries for the bank bank_id, enter:

lb_$lookup_object(&bank_id, &lookup_handle, MAX_LOCS, &n_locs,
   bank_loc, &st);

Implementation Specifics

This Library Routine is part of Network Computing System in Network Support Facilities in Base Operating System (BOS) Runtime.

Related Information

Remote Procedure Call (RPC) Runtime Library (NCS) in AIX 5L Version 5.1 Communications Programming Concepts.

[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]