PreviousNext

dce_acl_inq_prin_and_group(3sec)

Inquires the principal and group of an RPC caller

Synopsis

#include <dce/dce.h>
#include <dce/aclif.h>


void dce_acl_inq_prin_and_group(
handle_t handle,
uuid_t *
principal,
uuid_t *
group,
error_status_t *
status);

Parameters

Input

handle
The remote procedure call binding handle.

Output

principal
The UUID of the principal of the caller of the RPC.

group
The UUID of the group of the caller of the RPC.

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

Description
The dce_acl_inq_prin_and_group( ) routine finds the principal and group of the caller of a remote procedure call. This information is useful for filling in the owner_id and group_id fields of standard data or object headers. Setting the owner and group make sense only if your ACL manager will handle owners and groups, which you specify with the dce_acl_c_has_owner and dce_acl_c_has_groups flags to dce_acl_register_object_type( ).

If the caller is unauthenticated, the principal and group are filled with the NIL UUID, generated through uuid_create_nil( ).

Examples

dce_db_std_header_init(db, &data, ..., &st);
dce_acl_inq_prin_and_group(h, &data.h.owner_id, &data.h.group_id, &st);

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. The dce_acl_inq_prin_and_group( ) routine can return errors from dce_acl_inq_client_creds( ), sec_cred_get_initiator( ), and sec_cred_get_pa_data( ). It generates no error messages of its own.

Related Information
Functions: dce_acl_register_object_type(3sec)