PreviousNext

sec_rgy_pgo_replace(3sec)

Replaces the data in an existing PGO item

Synopsis

#include <dce/pgo.h>

void sec_rgy_pgo_replace(

sec_rgy_handle_t context,
sec_rgy_domain_t name_domain,
sec_rgy_name_t pgo_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.

pgo_name
A character string (type sec_rgy_name_t) containing the name of the principal, group, or organization whose data is to be replaced.

pgo_item
A pointer to a sec_rgy_pgo_item_t structure containing the new data for the 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, if a principal, may have 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_replace( ) routine replaces the data associated with a PGO item in the registry database.

The UNIX ID and UUID of a PGO item cannot be replaced. To change the UNIX ID or UUID, the existing PGO item must be deleted and a new PGO item added in its place. The one exception to this rule is that the UNIX ID can be replaced in the PGO item for a cell principal. The reason for this exception is that the UUID for a cell principal does not contain an embedded UNIX ID.

Permissions Required

The sec_rgy_pgo_replace( ) routine requires at least one of the following permissions:

· The m (mgmt_info) permission on the PGO item, if quota or flags is being set.

· The f (fullname) permission on the PGO item, if fullname is being set.

Files

/usr/include/dce/pgo.idl
The idl file from which dce/pgo.h was derived.

Errors

The following describes a partial list of errors that might be returned. Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages.

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

sec_rgy_object_not_found
No PGO item was found with the given name.

sec_rgy_unix_id_changed
The UNIX number of the PGO item was changed.

sec_rgy_server_unavailable
The DCE Registry Server is unavailable.

error_status_ok
The call was successful.

Related Information
Functions:

sec_intro(3sec)

sec_rgy_pgo_add(3sec)

sec_rgy_pgo_delete(3sec)

sec_rgy_pgo_rename(3sec)