Adds a specified holder record to a target identifier. Format SYS$ADD_HOLDER id ,holder ,[attrib] C Prototype int sys$add_holder (unsigned int id, struct _generic_64 *holder, unsigned int attrib);
1 – Arguments
id OpenVMS usage:rights_id type: longword (unsigned) access: read only mechanism: by value Target identifier granted to the specified holder when $ADD_ HOLDER completes execution. The id argument is a longword containing the binary value of the target identifier. holder OpenVMS usage:rights_holder type: quadword (unsigned) access: read only mechanism: by reference Holder identifier that is granted access to the target identifier when $ADD_HOLDER completes execution. The holder argument is the address of a quadword data structure that consists of a longword containing the holder's UIC identifier followed by a longword containing a value of 0. attrib OpenVMS usage:mask_longword type: longword (unsigned) access: read only mechanism: by value Attributes to be placed in the holder record when $ADD_HOLDER completes execution. The attrib argument is a longword containing a bit mask specifying the attributes. A holder is granted a specified attribute only if the target identifier has the attribute. Symbol values are offsets to the bits within the longword. You can also obtain the values as masks with the appropriate bit set using the prefix KGB$M rather than KGB$V. The symbols are defined in the system macro library ($KGBDEF). The symbolic name for each bit position is listed in the following table: Bit Position Meaning When Set KGB$V_DYNAMIC Allows holders of the identifier to remove it from or add it to the process rights database by using the DCL command SET RIGHTS_LIST. KGB$V_HOLDER_HIDDEN Prevents someone from getting a list of users who hold an identifier, unless they own the identifier themselves. KGB$V_NAME_HIDDEN Allows holders of an identifier to have it translated-either from binary to ASCII or vice versa-but prevents unauthorized users from translating the identifier. KGB$V_NOACCESS Makes any access rights of the identifier null and void. This attribute is intended as a modifier for a resource identifier or the Subsystem attribute. KGB$V_RESOURCE Allows holders of an identifier to charge disk space to the identifier. It is used only for file objects. KGB$V_SUBSYSTEM Allows holders of the identifier to create and maintain protected subsystems by assigning the Subsystem ACE to the application images in the subsystem.