VMS Help  —  DCE  DCE_SECURITY, API Routines, sec_rgy_attr_lookup_no_expand
 NAME
   sec_rgy_attr_lookup_no_expand -  Reads a specified object's
                                    attribute(s), without expanding
                                    attribute sets into individual
                                    member attributes

 SYNOPSIS

 #include <dce/sec_rgy_attr.h>

 void sec_rgy_attr_lookup_no_expand(
         sec_rgy_handle_t context,
         sec_rgy_domain_t name_domain,
         sec_rgy_name_t name,
         sec_attr_cursor_t *cursor,
         unsigned32 num_attr_keys,
         unsigned32 space_avail,
         uuid_t attr_keys[],
         unsigned32 *num_returned,
         sec_attr_t attr_sets[],
         unsigned32  *num_left,
         error_status_t status);

 PARAMETERS

 Input

 context
        An opaque handle bound to a registry server.  Use
        sec_rgy_site_open()  to acquire a bound handle.

 name_domain
        A value of type sec_rgy_domain_t that identifies the domain
        in which the named object resides.  The valid values are as
        follows:

        sec_rgy_domain_principal
                    The name identifies a principal.

        sec_rgy_domain_group
                    The name identifies a group.

        sec_rgy_domain_org
                    The name  identifies an organization.

 This parameter is ignored if name is policy or replist.

 name   A pointer to a sec_rgy_name_t character string containing the
        name of the person, group, or organization to which the
        attribute is attached.

 num_attr_keys
        An unsigned 32-bit integer that specifies the number of elements
        in the the attr_keys[] array.  If num_attr_keys is set to 0, all
        attribute sets that the caller is authorized to see are returned.

 space_avail
        An unsigned 32-bit integer that specifies the size of the
        attrs_sets[] array.

 attr_keys[]
        An array of values of type uuid_t that specify the UUIDs of
        the attribute sets to be returned. The size of the attr_keys[]
        array is determined by the num_attr_keys parameter.

 Input/Output

 cursor
        A pointer to a sec_attr_cursor_t.  As an input parameter,
        cursor is a pointer to a sec_attr_cursor_t that is initialized
        by the sec_rgy_attr_cursor_init. As an output parameter,
        cursor is a pointer to a sec_attr_cursor_t that is positioned
        past the attribute sets returned in this call.

 Output

 num_returned
        A pointer to a 32-bit integer that specifies the number of
        attribute sets returned in the attrs[] array.

 attr_sets
        An array of values of type sec_attr_t that contains the
        attribute sets retrieved by UUID. The size of the array is
        determined by space_avail and the length by num_returned.

 num_left
        A pointer to a 32-bit unsigned integer that supplies the number
        of attribute sets that were found but could not be returned
        because of space constraints in the attr_sets[] buffer.  To
        ensure that all the attributes will be returned, increase the
        size of the attr_sets[] array by increasing the size of
        space_avail and num_returned.

 status
        A pointer to the completion status.  On successful completion,
        the routine returns error_status_ok.  Otherwise, it returns an
        error.

 DESCRIPTION

 The sec_rgy_attr_lookup_no_expand() routine reads attribute sets.  This
 routine is similar to the sec_rgy_attr_lookup_by_id() routine with one
 exception: for attribute sets, the sec_rgy_attr_lookup_by_id() routine
 expands attribute sets and returns a sec_attr_t for each member in the
 set.  This call does not.  Instead it returns a sec_attr_t for the set
 instance only.  The sec_rgy_attr_lookup_no_expand() routine is useful
 for programmatic access.

 cursor is a cursor of type sec_attr_cursor_t that establishes the point
 in the attribute set list from which the server should start processing
 the query.  Use the sec_rgy_attr_cursor_init function to initialize
 cursor.  If cursor is uninitialized, the server begins processing the
 query with the first attribute that satisfies the search criteria.

 The num_left parameter contains the number of attribute sets that were
 found but could not be returned because of space constraints of the
 attr_sets[] array. (Note that this number may be inaccurate if the
 target server allows updates between successive queries.) To obtain all
 of the remaining attribute sets, set the size of the attr_sets[] array
 so that it is large enough to hold the number of attributes listed in
 num_left.

 Permissions Required

 The sec_rgy_attr_lookup_no_expand() routine requires the query
 permission set for each attribute type identified in the attr_keys[]
 array. These permissions are defined as part of the ACL manager set
 in the schema entry of each attribute type.

 FILES

 SYS$COMMON:[DCE$LIBRARY]SEC_RGY_ATTR.IDL
              The idl file from which dce/sec_rgy_attr.h was derived.

 ERRORS

 unauthorized

 registry server unavailable

 invalid/unsupported attribute type

 error_status_ok

 RELATED INFORMATION

 Functions: sec_intro
            sec_rgy_attr_lookup_by_id
            sec_rgy_attr_lookup_by_name
Close Help