|
VMS Help DCE, DCE_SECURITY, API Routines, sec_attr_trig_update *Conan The Librarian |
NAME
sec_attr_trig_update - For attributes coded with an attribute trigger
type of update, passes attribute updates to an
update attribute trigger server for evaluation
SYNOPSIS
#include <dce/sec_attr_trig.h>
void sec_attr_trig_update (
handle_t h,
sec_attr_component_name_t cell_name,
sec_attr_component_name_t component_name,
unsigned32 num_to_write,
unsigned32 space_avail,
sec_attr_t in_attrs[],
unsigned32 *num_returned,
sec_attr_t out_attrs[],
unsigned32 *num_left,
signed32 *failure_index,
error_status_t *status);
PARAMETERS
Input
h A handle referring to the trigger server to be accessed. Use the
trigger binding information specified in the attribute encoding
to acquire a bound handle.
cell_name
A value of sec_attr_component_name_t that identifies the cell
in which the object whose attribute is to be accessed resides.
Supply a NULL cell_name to specify the local cell (/.:).
component_name
A value of sec_attr_component_name_t that identifies the name of
the object whose attribute is to be accessed. If cell_name
specifies a foreign cell, component_name is interpreted as a
UUID in string format since the caller of this interface knows
only the UUID, not the name, of the foreign principal.
num_to_write
An unsigned 32-bit integer that specifies the number of elements
in the in_attrs array. This integer must be greater than 0.
space_avail
An unsigned 32-bit integer that specifies the size of the
out_attrs array.
in_attrs[]
An array of values of type sec_attr_t that specifies the
attribute instances to be written. The size of in_attrs[]
is determined by num_to_write.
Output
num_returned
A pointer to an unsigned 32-bit integer that specifies the number
of attribute instances returned in the out_attrs[] array.
out_attrs[]
An array of values of type sec_attr_t. These values, supplied by
the update attribute trigger server, are in a form suitable for
storage in the registry database.
num_left
A pointer to an unsigned 32-bit integer that supplies the number
of attributes that were found but not returned because of space
constraints in the out_attrs[] buffer.
failure_index
In the event of an error, failure_index is a pointer to the
element in the in_attrs[] array that caused the update to fail.
If the failure cannot be attributed to a specific attribute, the
value of failure_index is -1.
status
A pointer to the completion status. On successful completion,
the routine returns error_status_ok. Otherwise, it returns an
error.
DESCRIPTION
The sec_attr_trig_update() routine passes attributes coded with an
attribute trigger type of update to a user-written update attribute
trigger server for evaluation before the updates are made to the
registry.
Although generally this routine it is not called directly, this
reference page is provided for users who are writing the attribute
trigger servers that will receive sec_attr_trig_update() input and
supply its output.
The sec_attr_trig_update() routine is called by the DCE attribute update
code for all schema entries that specify an update attribute trigger
(sec_attr_trig_type_update specified with the sec_attr_trig_type_flags_t
data type). The attribute update code passes the sec_attr_trig_update()
input parameters to a user-written update attribute trigger server and
receives the output parameters back from the server. The attribute
trigger server is responsible for evaluating the semantics of the entry
in order to reject or accept it, and the attribute trigger server may
even make changes in the output it sends back to the update code to
ensure the entry adheres to the semantics. The output received from
the attribute trigger server is in a form to be stored in the registry.
(Note that update attribute trigger servers do not store attribute
values. Attribute values are stored in the registry database.)
This is an atomic operation: if the update of any attribute in the
array fails to pass the evaluation, all updates are aborted. The
attribute causing the update to fail is identified in failure_index.
If the failure cannot be attributed to a given attribute, failure_index
contains -1.
For objects in the local cell, set the cell_name parameter to null, and
the component_name parameter to specify the object's name.
For objects in a foreign cell, set the cell_name parameter the the name
of the foreign cells, and the component_name parameter to specify the
UUID in string format that identifies the object in the foreign cell.
FILES
SYS$COMMON:[DCE$LIBRARY]SEC_ATTR_TRIG.IDL
The idl file from which dce/sec_attr_trig.h was derived.
ERRORS
database read only
server unavailable
invalid/unsupported attribute type
invalid encoding type
value not unique
site read only
unauthorized
error_status_ok
RELATED INFORMATION
Functions: sec_intro
sec_attr_trig_query
|
|