|
HP OpenVMS System Services Reference Manual
Required Access or Privileges
The caller may require extension-specific privileges to search on some
data items. The Persona Item Codes section lists the privileges that
are needed.
Required Quota
None
Related Services
$PERSONA_ASSUME, $PERSONA_CLONE, $PERSONA_CREATE,
$PERSONA_CREATE_EXTENSION, $PERSONA_DELETE_EXTENSION,
$PERSONA_DELEGATE, $PERSONA_DELETE, $PERSONA_EXTENSION_LOOKUP,
$PERSONA_MODIFY, $PERSONA_QUERY, $PERSONA_RESERVE
Condition Values Returned
SS$_NORMAL
|
The service completed successfully.
|
SS$_ACCVIO
|
The item list cannot be read by the caller.
|
SS$_BADPARAM
|
An invalid parameter was specified.
|
SS$_BADITMCOD
|
The item list contains an invalid item code.
|
SS$_BADCONTEXT
|
The context value is invalid.
|
SS$_NOIMPERSONATE
|
The caller does not have the privilege to obtain information about the
specified personae.
|
SS$_NOMOREPROC
|
There are no more personae to check.
|
SS$_NOSUCHEXT
|
The extension requested does not exist on the system.
|
$PERSONA_MODIFY (Alpha and Integrity servers)
On Alpha and Integrity server systems, sets attribute values for a
persona.
Format
SYS$PERSONA_MODIFY persona ,itmlst
C Prototype
int sys$persona_modify (unsigned int *persona, void *itmlst);
Arguments
persona
OpenVMS usage: |
persona |
type: |
longword (unsigned) |
access: |
read only |
mechanism: |
by reference |
Address of a longword containing the persona identification for which
this service is to set information.
itmlst
OpenVMS usage: |
item_list_3 |
type: |
longword (unsigned) |
access: |
read only |
mechanism: |
by reference |
Attributes specifying which information in the persona is to be
modified. The itmlst argument is the address of a list
of item descriptors, each describing an item of information or an item
list processing directive. The list of item descriptors is terminated
by a longword value of 0.
The following diagram shows the format of a single item descriptor:
The following table lists the item descriptor fields and their
definitions:
Field |
Description |
Buffer length
|
A word containing a user-supplied integer specifying the length (in
bytes) of the buffer from which $PERSONA_MODIFY is to get information.
|
Item code
|
A word containing a user-supplied symbolic code specifying the item of
information $PERSONA_MODIFY is to change, or specifying a directive for
processing subsequent items. The $ISSDEF macro defines these codes.
Each item code is described in the Description section.
|
Buffer address
|
A longword containing the user-supplied address of the buffer from
which $PERSONA_MODIFY is to get the information.
|
Return length address
|
This field is ignored on a call to PERSONA_MODIFY.
|
Description
The Modify Persona Data service sets attribute values for a persona.
OpenVMS Persona Item Codes
The following table contains the item codes specific to the OpenVMS
persona extension data:
Item Code |
Use+ |
Size (bytes) |
Description |
ISS$_USERNAME
|
Q,M,F
|
32
|
OpenVMS user name as text string
|
ISS$_ACCOUNT
|
Q,M,F
|
32
|
OpenVMS account name as text string
|
ISS$_DOMAIN
|
Q,F
|
32
|
OpenVMS SCSNODE as text string as obtained from $GETJPI's nodename
|
ISS$_PRINCIPAL
|
Q,F
|
64
|
OpenVMS user name as text string
|
ISS$_EXTENSION
|
Q,F
|
32
|
The text string VMS
|
ISS$_WORKPRIV
|
Q,M
|
8
|
Working privilege mask
|
ISS$_WORKCLASS
|
Q,M
|
Varying
|
Working classification
|
ISS$_RIGHTS
|
Q
|
Varying
|
Enabled list of rights identifiers
|
ISS$_NOAUDIT
|
Q,M
|
4
|
No audit counter---0 means audits disabled
|
ISS$_UIC
|
Q,M,F
|
4
|
Current UIC
|
ISS$_AUTHPRIV
|
Q,M
|
8
|
Authorized privilege mask
|
ISS$_PERMPRIV
|
Q,M
|
8
|
Permanent privilege mask
|
ISS$_IMAGE_WORKPRIV
|
Q,M
|
8
|
Image working privilege mask
|
ISS$_ENABLED
|
Q
|
4
|
Mask of enabled rights chains
|
ISS$_AUTHRIGHTS
|
Q
|
Varying
|
Authorized list of rights identifiers
|
ISS$_MINCLASS
|
Q
|
Varying
|
Minimum classification
|
ISS$_MAXCLASS
|
Q
|
Varying
|
Maximum classification
|
+Use descriptions are: Query, Modify, and Find.
Required Access or Privileges
This service requires that the caller have the IMPERSONATE privilege
enabled or be in exec or kernel mode.
Required Quota
None
Related Services
$PERSONA_ASSUME, $PERSONA_CLONE, $PERSONA_CREATE,
$PERSONA_CREATE_EXTENSION, $PERSONA_DELETE_EXTENSION,
$PERSONA_DELEGATE, $PERSONA_DELETE, $PERSONA_EXTENSION_LOOKUP,
$PERSONA_FIND, $PERSONA_QUERY, $PERSONA_RESERVE
Condition Values Returned
SS$_NORMAL
|
The service completed successfully.
|
SS$_ACCVIO
|
The item list cannot be read by the caller, or the buffer cannot be
read by the caller.
|
SS$_BADPARAM
|
An invalid parameter was specified.
|
SS$_BADITMCOD
|
The item list contains an invalid item code.
|
SS$_NOIMPERSONATE
|
The caller does not have the privilege to obtain information about the
specified personae.
|
SS$_NOSUCHEXT
|
The extension requested does not exist on the system.
|
SS$_PERSONANONGRATA
|
The persona ID supplied was invalid. This service may also return
status codes associated with the various extension routines.
|
$PERSONA_QUERY (Alpha and Integrity servers)
On Alpha and Integrity server systems, retrieves attribute values from
a persona (and accompanying extensions).
Format
SYS$PERSONA_QUERY persona ,itmlst
C Prototype
int sys$persona_query (unsigned int *persona, void *itmlst);
Arguments
persona
OpenVMS usage: |
persona |
type: |
longword (unsigned) |
access: |
read only |
mechanism: |
by reference |
Address of a longword into which the persona identification handle is
written.
Two special values for persona are also permitted: 0,
which means use the current persona, and -1, which means use the
process' natural persona.
itmlst
OpenVMS usage: |
item_list_3 |
type: |
longword (unsigned) |
access: |
read only |
mechanism: |
by reference |
Attributes describing which information about the persona is to be
returned. The itmlst argument is the address of a list
of item descriptors, each of which describes an item of information or
an item list processing directive. The list of item descriptors is
terminated by a longword value of 0.
The following diagram shows the format of a single item descriptor:
The following table lists the item field descriptors and their
definitions:
Field |
Description |
Buffer length
|
A word containing a user-supplied integer specifying the length (in
bytes) of the buffer into which $PERSONA_QUERY writes the information.
The length of the buffer depends on the item code specified in the item
code field of the item descriptor. If the value of buffer length is too
small, $PERSONA_QUERY truncates the data.
If the buffer length is specified as 0, the service does not return
any data in the buffer; instead, the service returns the size of buffer
required to contain the data in the Return Length address. This allows
run-time determination of the size of buffer needed to hold the
requested information.
|
Item code
|
A word containing a user-supplied symbolic code specifying the item of
information $PERSONA_QUERY is to return, or specifying a directive for
processing subsequent items. The $ISSDEF macro defines these codes.
Each item code is described in the Description section.
|
Buffer address
|
A longword containing the user-supplied address of the buffer into
which $PERSONA_QUERY writes the information.
|
Return length address
|
A longword containing the user-supplied address of a word into which
the service writes the length in bytes of the information it returned.
If the buffer length field is zero (0), then you must specify a return
length address.
|
Description
The Query for Persona Data service returns the requested items in the
buffers supplied.
OpenVMS Persona Item Codes
The following table contains the item codes specific to the OpenVMS
persona extension data:
Item Code |
Use+ |
Size (bytes) |
Description |
ISS$_USERNAME
|
Q,M,F
|
32
|
OpenVMS user name as text string
|
ISS$_ACCOUNT
|
Q,M,F
|
32
|
OpenVMS account name as text string
|
ISS$_DOMAIN
|
Q,F
|
32
|
OpenVMS SCSNODE as text string as obtained from $GETJPI's nodename
|
ISS$_PRINCIPAL
|
Q,F
|
64
|
OpenVMS user name as text string
|
ISS$_EXTENSION
|
Q,F
|
32
|
The text string VMS
|
ISS$_WORKPRIV
|
Q,M
|
8
|
Working privilege mask
|
ISS$_WORKCLASS
|
Q,M
|
Varying
|
Working classification
|
ISS$_RIGHTS
|
Q
|
Varying
|
Enabled list of rights identifiers
|
ISS$_NOAUDIT
|
Q,M
|
4
|
No audit counter---0 means audits disabled
|
ISS$_UIC
|
Q,M,F
|
4
|
Current UIC
|
ISS$_AUTHPRIV
|
Q,M
|
8
|
Authorized privilege mask
|
ISS$_PERMPRIV
|
Q,M
|
8
|
Permanent privilege mask
|
ISS$_IMAGE_WORKPRIV
|
Q,M
|
8
|
Image working privilege mask
|
ISS$_ENABLED
|
Q
|
4
|
Mask of enabled rights chains
|
ISS$_AUTHRIGHTS
|
Q
|
Varying
|
Authorized list of rights identifiers
|
ISS$_MINCLASS
|
Q
|
Varying
|
Minimum classification
|
ISS$_MAXCLASS
|
Q
|
Varying
|
Maximum classification
|
+Use descriptions are: Query, Modify, and Find.
Common Item Codes
The following table contains the item codes specific to the common
persona extension data:
Item Code |
Use+ |
Size (bytes) |
Description |
ISS$_COMMON_USERNAME
|
Q
|
varying
|
User name as text string
|
ISS$_COMMON_ACCOUNT
|
Q
|
varying
|
Account name as text string
|
ISS$_COMMON_FLAGS
|
Q
|
4
|
Flags as a longword
|
ISS$_DOMAIN
|
Q
|
varying
|
Domain name as text string
|
ISS$_COMMON_PRINCIPAL
|
Q
|
varying
|
Principal name as text string
|
ISS$_EXTENSION
|
Q
|
32
|
Extension name as text string
|
ISS$_DOI
|
Q
|
8
|
Domain Of Interpretation quadword
|
+Use descriptions are: Query, Modify, and Find.
General Persona Item Codes
The following table contains the item codes specific to the general
persona extension data:
Item Code |
Use+ |
Size (bytes) |
Description |
ISS$_SWITCH_EXTENSION
|
Q,M
|
4
|
Extension ID to be used for subsequent item code processing
|
ISS$_FLAGS
|
Q,M
|
4
|
Various flags (ISS$_FLAG_PERMANENT)
|
ISS$_MODE
|
Q
|
4
|
Persona creation mode (user, supervisor, exec, or kernel)
|
ISS$_UID
|
Q
|
16
|
UID assigned when persona created
|
ISS$_PERSONA_ID
|
Q
|
4
|
Persona ID of this PSB
|
ISS$_PRIMARY_EXTENSION
|
Q,M
|
4
|
Extension id of primary authenticator
|
ISS$_EXTENSION_COUNT
|
Q
|
4
|
Count of extensions attached to persona
|
ISS$_EXTENSION_ARRAY
|
Q
|
varying
|
Array of longwords containing extension ids of all extensions attached
to persona
|
+Use descriptions are: Query, Modify, and Find.
NT Persona Item Codes
The following table contains the item codes specific to the NT persona
extension data:
Item Code |
Use+ |
Size (bytes) |
Description |
ISS$_NT_PRINCIPAL
|
Q,F
|
varying
|
Principal name as text string
|
ISS$_NT_TOKEN_USERNAME
|
Q,F
|
varying
|
NT user name as text string
|
ISS$_NT_TOKEN_DOMAINNAME
|
Q,F
|
varying
|
NT domain as text string
|
ISS$_EXTENSION
|
Q,F
|
varying
|
The text string "NT"
|
ISS$_NT_FLAGS
|
Q,M
|
4
|
Various flags
|
ISS$_NT_USER_REFCOUNT
|
Q,M
|
4
|
NT-Specific User Field
|
ISS$_NT_CREDENTIALS
|
Q,M
|
varying
|
All Token and Security info
|
ISS$_NT_NT_OWF_PASSWORD
|
Q,M
|
varying
|
NT Password
|
ISS$_NT_LM_OWF_PASSWORD
|
Q,M
|
varying
|
LM Password
|
ISS$_NT_TOKEN_USERSESSIONKEY
|
Q,F
|
16
|
User's session key
|
ISS$_NT_TOKEN_LMSESSIONKEY
|
Q,F
|
8
|
LM session key
|
+Use descriptions are: Query, Modify, and Find.
Required Access or Privileges
No privileges are required to call this service.
Required Quota
None
Related Services
$PERSONA_ASSUME, $PERSONA_CLONE, $PERSONA_CREATE,
$PERSONA_CREATE_EXTENSION, $PERSONA_DELETE_EXTENSION,
$PERSONA_DELEGATE, $PERSONA_DELETE, $PERSONA_EXTENSION_LOOKUP,
$PERSONA_FIND, $PERSONA_MODIFY, $PERSONA_RESERVE
Condition Values Returned
SS$_NORMAL
|
The service completed successfully.
|
SS$_ACCVIO
|
The item list cannot be read by the caller, or the buffer length or
buffer cannot be written by the caller.
|
SS$_BADPARAM
|
An invalid parameter was specified.
|
SS$_BADITMCOD
|
The item list contains an invalid item code.
|
SS$_NOSUCHEXT
|
The extension requested does not exist on the system.
|
SS$_PERSONANONGRATA
|
The persona ID supplied is invalid.
|
|