Op Code (Hex) | Extender | Operand 1 | Operand 2 | Operand 3 | Operand [4-5] |
---|---|---|---|---|---|
TESTEAU 10FB |
| Available authority template receiver | Required authority template | Relative invocation | |
| |||||
TESTEAUB 1CFB | Branch options | Available authority template receiver | Required authority template | Relative invocation | Branch targets |
| |||||
TESTEAUI 18FB | Indicator options | Available authority template receiver | Required authority template | Relative invocation | Indicator targets |
Operand 2: Character(8) scalar.
Operand 3: Binary(2) variable scalar or constant or null.
Operand 4-5:
Bound program access | ||||||
---|---|---|---|---|---|---|
The return code will be set as follows:
This built-in function is used to provide support for the branch and indicator forms of the TESTEAU operation. The user must specify code to process the return code and perform the desired branching or indicator setting. |
This instruction verifies that the privileged instructions and special authorities specified by operand 2 are currently available to the thread.
If operand 1 is not null, all of the privileged instructions and special authorities specified by operand 2 that are currently available to the thread are returned in operand 1.
Note: | The term authority verification refers to the testing of the required privileged instruction and special authorities. |
If operand 3 is null, the authority verification is performed relative to the invocation executing this instruction. If an operand 3 is specified, the authority verification is performed relative to the invocation specified. Specifying an invocation causes the invocations subsequent to it to be bypassed in the authority verification process. This has the influence of excluding the program adopted user profiles for any of these excluded invocations from acting as a source of authority to the authority verification process.
The required privileged instructions and special authorities are specified by the required authority template of operand 2.
If the required authority is available, one of the following occurs:
The format for the available authority template receiver
(operand 1) is as follows: (1 = authorized)
Offset | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Dec | Hex |
| Field Name |
| Data Type and Length | ||||||||
0 | 0 |
| Authority template |
| Char(8) | ||||||||
0 | 0 |
| Privileged instruction template |
| Char(4) | ||||||||
0 | 0 |
| Create Logical Unit Description |
| Bit 0 | ||||||||
0 | 0 |
| Create Network Description |
| Bit 1 | ||||||||
0 | 0 |
| Create Controller Description |
| Bit 2 | ||||||||
0 | 0 |
| Create user profile |
| Bit 3 | ||||||||
0 | 0 |
| Modify user profile |
| Bit 4 | ||||||||
0 | 0 |
| Diagnose |
| Bit 5 | ||||||||
0 | 0 |
| Terminate machine processing |
| Bit 6 | ||||||||
0 | 0 |
| Initiate process |
| Bit 7 | ||||||||
0 | 0 |
| Modify Resource Management Control |
| Bit 8 | ||||||||
0 | 0 |
| Create Mode Description |
| Bit 9 | ||||||||
0 | 0 |
| Create Class of Service Description |
| Bit 10 | ||||||||
0 | 0 |
| Reserved (binary 0) |
| Bits 11-31 | ||||||||
4 | 4 |
| Special authority template |
| Char(4) | ||||||||
4 | 4 |
| All object |
| Bit 0 | ||||||||
4 | 4 |
| Load (unrestricted) |
| Bit 1 | ||||||||
4 | 4 |
| Dump (unrestricted) |
| Bit 2 | ||||||||
4 | 4 |
| Suspend (unrestricted) |
| Bit 3 | ||||||||
4 | 4 |
| Load (restricted) |
| Bit 4 | ||||||||
4 | 4 |
| Dump (restricted) |
| Bit 5 | ||||||||
4 | 4 |
| Suspend (restricted) |
| Bit 6 | ||||||||
4 | 4 |
| Process control |
| Bit 7 | ||||||||
4 | 4 |
| Reserved (binary 0) |
| Bit 8 | ||||||||
4 | 4 |
| Service |
| Bit 9 | ||||||||
4 | 4 |
| Auditor authority |
| Bit 10 | ||||||||
4 | 4 |
| Spool control |
| Bit 11 | ||||||||
4 | 4 |
| I/O system configuration |
| Bit 12 | ||||||||
4 | 4 |
| Reserved (binary 0) |
| Bits 13-23 | ||||||||
4 | 4 |
| Modify machine attributes |
| Bits 24-31 | ||||||||
4 | 4 |
| Group 2 |
| Bit 24 | ||||||||
4 | 4 |
| Group 3 |
| Bit 25 | ||||||||
4 | 4 |
| Group 4 |
| Bit 26 | ||||||||
4 | 4 |
| Group 5 |
| Bit 27 | ||||||||
4 | 4 |
| Group 6 |
| Bit 28 | ||||||||
4 | 4 |
| Group 7 |
| Bit 29 | ||||||||
4 | 4 |
| Group 8 |
| Bit 30 | ||||||||
4 | 4 |
| Group 9 |
| Bit 31 | ||||||||
8 | 8 |
| --- End --- |
|
|
The format for the required authority template
(operand 2) is as follows: (1 = authorized)
Offset | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Dec | Hex |
| Field Name |
| Data Type and Length | ||||||||
0 | 0 |
| Required authority |
| Char(8) | ||||||||
0 | 0 |
| Privileged instruction template |
| Char(4) | ||||||||
0 | 0 |
| Create Logical Unit Description |
| Bit 0 | ||||||||
0 | 0 |
| Create Network Description |
| Bit 1 | ||||||||
0 | 0 |
| Create Controller Description |
| Bit 2 | ||||||||
0 | 0 |
| Create user profile |
| Bit 3 | ||||||||
0 | 0 |
| Modify user profile |
| Bit 4 | ||||||||
0 | 0 |
| Diagnose |
| Bit 5 | ||||||||
0 | 0 |
| Terminate machine processing |
| Bit 6 | ||||||||
0 | 0 |
| Initiate process |
| Bit 7 | ||||||||
0 | 0 |
| Modify Resource Management Control |
| Bit 8 | ||||||||
0 | 0 |
| Create Mode Description |
| Bit 9 | ||||||||
0 | 0 |
| Create Class of Service Description |
| Bit 10 | ||||||||
0 | 0 |
| Reserved (binary 0) |
| Bits 11-31 | ||||||||
4 | 4 |
| Special authority template |
| Char(4) | ||||||||
4 | 4 |
| All object |
| Bit 0 | ||||||||
4 | 4 |
| Load (unrestricted) |
| Bit 1 | ||||||||
4 | 4 |
| Dump (unrestricted) |
| Bit 2 | ||||||||
4 | 4 |
| Suspend (unrestricted) |
| Bit 3 | ||||||||
4 | 4 |
| Load (restricted) |
| Bit 4 | ||||||||
4 | 4 |
| Dump (restricted) |
| Bit 5 | ||||||||
4 | 4 |
| Suspend (restricted) |
| Bit 6 | ||||||||
4 | 4 |
| Process control |
| Bit 7 | ||||||||
4 | 4 |
| Reserved (binary 0) |
| Bit 8 | ||||||||
4 | 4 |
| Service |
| Bit 9 | ||||||||
4 | 4 |
| Auditor authority |
| Bit 10 | ||||||||
4 | 4 |
| Spool control |
| Bit 11 | ||||||||
4 | 4 |
| I/O system configuration - DAC |
| Bit 12 | ||||||||
4 | 4 |
| Reserved (binary 0) |
| Bits 13-23 | ||||||||
4 | 4 |
| Modify machine attributes |
| Bits 24-31 | ||||||||
4 | 4 |
| Group 2 |
| Bit 24 | ||||||||
4 | 4 |
| Group 3 |
| Bit 25 | ||||||||
4 | 4 |
| Group 4 |
| Bit 26 | ||||||||
4 | 4 |
| Group 5 |
| Bit 27 | ||||||||
4 | 4 |
| Group 6 |
| Bit 28 | ||||||||
4 | 4 |
| Group 7 |
| Bit 29 | ||||||||
4 | 4 |
| Group 8 |
| Bit 30 | ||||||||
4 | 4 |
| Group 9 |
| Bit 31 | ||||||||
8 | 8 |
| --- End --- |
|
|
The relative invocation operand (operand 3) identifies an invocation relative to the current invocation at which the authority verification is to be performed. The value of the relative invocation operand must be less than or equal to zero. A value of zero identifies the current invocation, -1 identifies the prior invocation, -2, the invocation prior to that, and so on. A value larger than the number of invocations currently on the invocation stack or a positive value results in the signaling of the scalar value invalid (hex 3203) exception.
An immediate value is not allowed for operand 3.
The program adopted and propagated user profiles for the identified invocation and older invocations will be included in the authority verification process. Program adopted user profiles for invocations newer than the identified invocation will not be included in the authority verification process. If the current invocation is specified, its program adopted user profile is included whether or not it is to be propagated.
Damaged user profiles encountered during the authority verification processing result in the signaling of the authority verification terminated due to damaged object (hex 1005) exception
06 Addressing
08 Argument/Parameter
0A Authorization
10 Damage Encountered
1A Lock State
1C Machine-Dependent
20 Machine Support
22 Object Access
24 Pointer Specification
2C Program Execution
2E Resource Control Limit
32 Scalar Specification
36 Space Management
38 Template Specification
44 Protection Violation