VMS Help
System Services, $SET RESOURCE DOMAIN
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
Controls the association between a calling process and resource
domains.
Format
SYS$SET_RESOURCE_DOMAIN func ,rsdm_id ,domain_number
,[nullarg] ,[access] ,[acmode]
C Prototype
int sys$set_resource_domain (unsigned int func, unsigned
int *rsdm_id, unsigned int
domain_number, unsigned int
nullarg, unsigned int access,
unsigned int acmode);
func
OpenVMS usage:function_code
type: longword (unsigned)
access: read only
mechanism: by value
Function code specifying the action that $SET_RESOURCE_DOMAIN
is to perform. The func argument is a longword containing this
function code.
See the Function Codes section in the OpenVMS System Services
Reference Manual for a description of $SET_RESOURCE_DOMAIN
function codes.
rsdm_id
OpenVMS usage:longword
type: longword (unsigned)
access: write only to join, read only to leave
mechanism: by reference
Resource domain identification. The rsdm_id argument is the
address of a longword specifying the association of the calling
process with the resource domain.
The RSDM$_JOIN_DOMAIN function returns a resource domain
identification. The RSDM$_LEAVE function requires the rsdm_id
argument as input to specify which resource domain association
the process is leaving.
The resource domain identification can be used as input to the
$ENQ and $ENQW system services.
domain_number
OpenVMS usage:longword
type: longword (unsigned)
access: read only
mechanism: by value
Domain number that identifies the resource domain. The domain_
number argument is a longword value containing the resource
domain number.
The domain_number argument is required for the RSDM$_JOIN_DOMAIN
function but ignored for the RSDM$_LEAVE function.
nullarg
OpenVMS usage:null_arg
type: longword (unsigned)
access: read only
mechanism: by value
Placeholder reserved to Compaq. You must specify 0.
access
OpenVMS usage:mask_longword
type: longword (unsigned)
access: read only
mechanism: by value
Types of access desired when using the lock management services
within the resource domain. The access argument is a longword
bit mask specifying the access types required; these can include
read, write, and lock.
The following table lists the symbols that the $RSDMDEF macro
defines, their descriptions, and the lock management system
services that might require each type of access:
Access
Symbol Description System Service
RSDM$M_READ Read lock value $DEQ, $ENQ, $ENQW, $GETLKI,
blocks $GETLKIW
RSDM$M_WRITE Write lock $DEQ, $ENQ, $ENQW,
value blocks
RSDM$M_LOCK Take locks $ENQ, $ENQW
The service grants the desired access, provided your process has
the necessary access rights to the resource domain. If you do not
specify the access argument or if you specify 0, $SET_RESOURCE_
DOMAIN attempts to access the domain in the following order:
1. Read, write, lock
2. Read, lock
3. Write, lock
4. Lock
The access attempt terminates with the first success.
The access argument defaults to 0. It is ignored for the RSDM$_
LEAVE function.
acmode
OpenVMS usage:access_mode
type: longword (unsigned)
access: read only
mechanism: by value
Access mode requested for the association to the resource domain.
The most privileged access mode granted is the access mode of the
caller. Locks cannot be taken from access modes less privileged
than the access mode of the association.
The acmode argument is a longword containing the access mode. The
$PSLDEF macro defines the following symbols for the access modes:
Symbolic Access Privilege
Name Mode Rank
PSL$C_KERNEL Kernel High
PSL$C_EXEC Executive -
PSL$C_SUPER Supervisor -
PSL$C_USER User Low
The acmode argument is optional for the RSDM$_JOIN_DOMAIN
function. If you do not specify the acmode argument, the access
mode is set to the access mode of the calling process. The acmode
argument is ignored for the RSDM$_LEAVE function.
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.