|
VMS Help DCE, DCE_SECURITY, API Routines, rdacl_lookup *Conan The Librarian |
NAME
rdacl_lookup - Returns the ACL for an object
SYNOPSIS
#include <dce/rdaclif.h>
void rdacl_lookup(
handle_t h,
sec_acl_component_name_t component_name,
uuid_t *manager_type,
sec_acl_type_t sec_acl_type,
sec_acl_result_t *result);
PARAMETERS
Input
h A handle referring to the target object.
component_name
A character string containing the name of the target object.
manager_type
A pointer to the UUID identifying the type of the ACL manager
in question. There may be more than one type of ACL manager
protecting the object whose ACL is bound to the input handle.
Use this parameter to distinguish them. Use
sec_acl_get_manager_types() to acquire a list of the manager
types protecting a given object.
sec_acl_type
The ACL type. The sec_acl_type_t data type distinguishes the
various types of ACLs an object can possess for a given
manager type. The possible values are as follows:
+ sec_acl_type_object
+ sec_acl_type_default_object
+ sec_acl_type_default_container
Output
result A pointer to a tagged union of type sec_acl_result_t. The tag
is the completion status, result.st. If result.st is equal to
error_status_ok, the union contains an ACL. Otherwise, the
completion status indicates an error, and the union is empty.
If the call returned successfully, the
result.tagged_union.sec_acl_list_t structure contains a
sec_acl_list_t. This data type is an array of pointers to
sec_acl_ts that define ACLs. If the permission set of the
returned ACL is 32 bits or smaller, sec_acl_list_t points to
only one sec_acl_t. If the permission set of the returned ACL
is larger than 32 bits, multiple sec_acl_ts are used to hold
them, and the sec_acl_list_t points to multiple sec_acl_ts.
DESCRIPTION
The rdacl_lookup() routine loads into memory a copy of an object's ACL
corresponding to the specified manager type. The routine returns a
pointer to the ACL. This routine is only used by ACL editors and
browsers; an application would use sec_acl_test_access() or
sec_acl_test_access_on_behalf() to process the contents of an ACL.
NOTES
This call is not intended to be used by application programs. The
sec_acl Application Programming Interface (API) provides all the
functionality necessary to use the ACL facility. This reference page
is provided for programmers who wish to write an ACL manager. In order
to write an ACL manager, a programmer must implement the entire rdacl
interface.
This network interface is called on the client side via the sec_acl
local interface. Developers are responsible for implementing the server
side of this interface. Test server code is included as a sample
implementation.
FILES
SYS$COMMON:[DCE$LIBRARY]RDACLIF.IDL
The idl file from which dce/rdaclif.h was derived.
ERRORS
sec_acl_unknown_manager_type
The manager type selected is not an available option.
sec_acl_cant_allocate_memory
The requested operation requires more memory than is avail-
able.
error_status_ok
The call was successful.
RELATED INFORMATION
Functions: sec_intro
sec_acl_bind
sec_acl_test_access
sec_acl_test_access_on_behalf
|
|