ent_acl_replace_apply
This remote procedure call (RPC) propagates an access control list (ACL)
to the specified directory and all of the files contained within the directory.
Also, ent_acl_replace_apply() optionally propagates the ACL to
all subtrees contained beneath the specified directory.
#include <dsserr.h>#include <apply.h>
ent_acl_replace_apply (handle, resource_name, sec_acl_type,
*acl_to_apply, tolerance,
recursion, max_errors,
error_buffer[ ],
*num_errors, *status);
Parameters
See Common Parameter Definitions
for descriptions of parameters not defined here.
handle
(handle_t) RPC binding handle. Usually
obtained by a call to rpc_ns_binding_import_next().
resource_name
(unsigned_char_p_t) points to a NULL terminated
string specifying the name of the resource to start the apply operation
from. The resource itself is included in the apply operation. The resource
must be a directory.
sec_acl_type
(sec_acl_type_t)
specifies the ACL type. Container objects (directories) have three ACLs
associated with them:
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ SYMBOLIC CONSTANT ³ MEANING ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ sec_acl_type_object ³ The ACL on the container itself. ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ sec_acl_type_default_objec³ The initial ACL for any files created within
the ³
³ ³ container. ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ sec_acl_type_default_conta³nThe initial ACL for directories created within
³
³ ³ the container. ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
acl_to_apply
(sec_acl_list_t)
the ACL to apply. The original ACL is replaced with this ACL.
tolerance
(32-bit unsigned) specifies how to handle files
and directories that the caller does not have permission to change. ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³ SYMBOLIC CONSTANT ³ MEANING ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ apply_tolerance_low ³ Halt the apply operation on the first ³
³ ³ DSS_AccessDenied error. ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ apply_tolerance_med ³ If a DSS_AccessDenied error occurs, log the
³
³ ³ error in the error_buffer and continue proc- ³
³ ³ essing. ³
ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
³ apply_tolerance_high ³ Objects that the caller does not have permission
³
³ ³ to change are skipped. No DSS_Access_Denied ³
³ ³ errors are returned. ³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
recursion
(32-bit
unsigned) If TRUE, propagate the ACL down the entire tree. If FALSE, only
resource_name and the files within resource_name will be affected.
max_errors
(32-bit
unsigned) Maximum number of errors that can be returned in error_buffer
array.
error_buffer
(error_entry_t_)
buffer used to return errors during apply operation. The client is responsible
for calling rpc_sm_client_free() for each error returned to release storage
used by resource_name.
num_errors
(32-bit
unsigned) Number of errors returned in error_buffer array.
status
(error_status_t) A pointer to the status of
the call.
The acl_to_apply must contain at least one entry that specifies the
c permission bit.
Note: You must use the IDL Compiler to compile apply.idl to generate
the client-side stub for the RPC call. Then compile the stub and link to
the .obj file to resolve the external references.
[Back]
[Next]