VMS Help  —  DCE  DCE_RPC, Application Routines, rpc_ns_mgmt_set_attribute
 NAME

   rpc_ns_mgmt_set_attribute - Adds an attribute to an RPC server entry
                               in the name service database.

   Used mainly by server applications; can also be used by management
   applications.

 SYNOPSIS

   #include <dce/rpc.h>
   #include <dce/nsattrid.h>
   void rpc_ns_mgmt_set_attribute( unsigned32 entry_name_syntax,
                                   unsigned_char_t *entry_name,
                                   uuid_t *attr_type,
                                   void *attr_value,
                                   error_status_t *status );

 PARAMETERS

   Input

   entry_name_syntax
       An integer value that specifies the syntax of the
       entry_name parameter.  To use the syntax specified in
       the RPC_DEFAULT_ENTRY_SYNTAX logical name, provide
       rpc_c_ns_syntax_default.

   entry_name
       Specifies the name of the RPC server entry in the name service
       database with which the attribute will be associated.  The name
       can be either the global or cell-relative name.  If you are using
       this routine to add a code sets attribute to an RPC server entry
       in the name service database, then this parameter specifies the
       name of the server entry with which the code sets attribute will
       be associated.

   attr_type
       A UUID that specifies the attribute type. For DCE 1.1, this value
       must be rpc_c_attr_codesets.

   attr_val
       An opaque data structure that specifies the attribute value to be
       stored in the name service database. If you are using this routine
       to add a code sets attribute to an RPC server entry, you must cast
       the representation of the code set data from the data type
       rpc_codeset_mgmt_p_t to the data type void*.

   Output

   status
       Returns the status code from this routine.  This status code
       indicates whether the routine completed successfully or, if not,
       why not.  The possible status codes and their meanings are as
       follows:

       rpc_s_ok       Success.

       rpc_s_invalid_name_syntax
                      The name syntax specified in the call is not valid.

       rpc_s_mgmt_bad_type
                      The attribute type specified in the call does not
                      match that of the attribute to be added to the name
                      service database.

       rpc_s_no_memory
                      The routine was unable to allocate memory to encode
                      the value.

       rpc_s_name_service_unavailable
                      The routine was unable to communicate with the name
                      service.

       rpc_s_no_ns_permission
                      The routine's caller does not have the proper
                      permission for an NSI operation.

 DESCRIPTION

   The rpc_ns_mgmt_set_attribute() routine belongs to a set of DCE
   RPC routines for use by client and server applications that are
   transferring international character data in a heterogeneous
   character set and code sets environment.

   The rpc_ns_mgmt_set_attribute() routine is designed to be a generic
   routine for adding an attribute to an RPC server entry in the name
   service database. The routine takes an attribute type and a pointer
   to the value, and stores the attribute value in the name service
   database.

   For DCE 1.1, you use rpc_ns_mgmt_set_attribute() in your application
   server initialization routine to add a code sets attribute to the
   server's entry in the Cell Directory Service database (which the
   initialization routine has created with the rpc_ns_binding_export()
   routine).  Because CDS stores integer values in little-endian format,
   the rpc_ns_mgmt_set_attribute() routine also encodes the code sets
   attribute value into an endian-safe format before storing it in the
   name service database.

   A management application can call rpc_ns_mgmt_set_attribute() to add
   an attribute to an RPC server entry in the name service database on
   behalf of an application that does not itself have the necessary name
   service permissions to add one.

   Permissions Required

   You need both read permission and write permission to the target RPC
   server entry (which is a CDS object). You also need insert permission
   to the parent directory.

 RETURN VALUES

   No value is returned.

 RELATED INFORMATION

   Functions: rpc_ns_mgmt_read_codesets
              rpc_ns_mgmt_remove_attribute
              rpc_rgy_get_codesets
Close Help