HELPLIB.HLB  —  DCE  DCE_SECURITY, API Routines, sec_rgy_pgo_add
 NAME
 sec_rgy_pgo_add - Adds a PGO item to the registry database

 SYNOPSIS

 #include <dce/pgo.h>

 void sec_rgy_pgo_add(
         sec_rgy_handle_t context,
         sec_rgy_domain_t name_domain,
         sec_rgy_name_t name,
         sec_rgy_pgo_item_t *pgo_item,
         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
        This variable identifies the type of the principal, group, or
        organization (PGO) item identified by the given name. The valid
        values are as follows:

        sec_rgy_domain_person
                    The name identifies a principal.

        sec_rgy_domain_group
                    The name identifies a group.

        sec_rgy_domain_org
                    The name identifies an organization.

 name   A pointer to a sec_rgy_name_t character string containing the
        name of the new PGO item.

 pgo_item
        A pointer to a sec_rgy_pgo_item_t structure containing the data
        for the new PGO item. The data in this structure includes the
        PGO item's name, UUID, UNIX number (if any), and administrative
        data, such as whether the item may have (or belong to) a
        concurrent group set.

 Output

 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_pgo_add() routine adds a PGO item to  the registry database.

 The PGO data consists of the following:

  +  The Universal Unique Identifier (UUID) of the PGO item. Specify
     NULL to have the registry server create a new UUID for an item.

  +  The UNIX number for the PGO item. If the registry uses embedded
     UNIX IDs (where a subset of the UUID bits represent the UNIX ID),
     then the specified ID must match the UUID, if both are specified.
     Use a value of -1 for the UNIX number to match any value.

  +  The quota for subaccounts allowed for this item entry.

  +  The full name of the PGO item.

  +  Flags (in the sec_rgy_pgo_flags_t format) indicating whether

       - A principal item is an alias.

       - The PGO item can be deleted from the registry.

       - A principal item can have a concurrent group set.

       - A group item can appear in a concurrent group set.

 Permissions Required

 The sec_rgy_pgo_add() routine requires the i (insert) permission on the
 parent directory in which the the PGO item is to be created.

 NOTES

 An account can be added to the registry database only when all its
 constituent PGO items are already in the database, and the appropriate
 membership relationships between them are established. For example, to
 establish an account with principal name tom, group name writers, and
 organization name hp, all three names must exist as independent PGO
 items in the database.  Furthermore, tom must be a member of writers,
 which must be a member of hp.  (See sec_rgy_acct_add() to add an
 account to the registry.)

 FILES

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

 ERRORS

 sec_rgy_not_authorized
              The client program is not authorized to add the specified
              PGO item.

 sec_rgy_object_exists
              A PGO item already exists with the name given in name.

 sec_rgy_server_unavailable
              The DCE Registry Server is unavailable.

 error_status_ok
              The call was successful.

 RELATED INFORMATION

 Functions: sec_intro
            sec_rgy_pgo_delete
            sec_rgy_pgo_rename
            sec_rgy_pgo_replace
            sec_rgy_acct_add
Close Help