Materialize User Profile (MATUP)
Instruction Syntax
Op Code (Hex) | Operand 1 | Operand 2 |
---|---|---|
013E | Receiver | User profile |
Operand 2: System pointer or space pointer data object.
Bound Program Access |
---|
|
Description:
The attributes of the user profile specified by operand 2 are materialized into the receiver specified by operand 1. (Operand 2 may refer to a materialization template that contains a system pointer to the user profile.)
The receiver identified by operand 1 must be 16-byte aligned in the space. The following is the format of the materialized information:
|
The first 4 bytes of the materialization identify the total number of bytes provided for use by the instruction. This value is supplied as input to the instruction and is not modified by the instruction. A value of less than 8 causes the materialization length invalid (hex 3803) exception to be signaled.
The second 4 bytes of the materialization identify the total number of bytes available to be materialized. The instruction materializes as many bytes as can be contained in the area specified as the receiver. If the byte area identified by the receiver is greater than that required to contain the information requested, then the excess bytes are unchanged. No exceptions (other than the materialization length invalid (hex 3803) exception) are signaled in the event that the receiver contains insufficient area for the materialization and the receiver may contain a partial individual independent ASP information entry.
System storage authorization (small) is the amount of auxiliary storage (in units of 1,024 bytes) that this user profile is authorized to use in the system ASP and basic ASPs. The combined storage of all objects this user profile owns in the system ASP and basic ASPs may not exceed this value. A value of 2,147,483,647 (hex 7FFFFFFF) indicates that this user profile has no limit on the amount of storage it may use (*NOMAX). If the user profile is authorized to use storage that is equal to or greater than 2 terabytes, and the materialize for given Licensed Internal Code release bit is set to binary 1, and the target Licensed Internal Code release to materialize field is set to a release prior to V7R2M0, then system storage authorization (small) will be set to *NOMAX. Otherwise, a value of -1 (hex FFFFFFFF) will be used to indicate that the profile is authorized to use storage that is equal to or greater than 2 terabytes, and the system storage authorization (large) field should be used to get an accurate value for this attribute. This same convention also applies to the independent ASP storage authorization (small) field.
System storage utilization (small) is the current amount of auxiliary storage (in units of 1,024 bytes) allocated for the storage of objects owned by this user profile in the system ASP and basic ASPs. A value of -1 (hex FFFFFFFF) indicates that the amount of auxiliary storage allocated is equal to or greater than 2 terabytes, and the system storage utilization (large) field should be used to get an accurate value of this attribute. This same convention also applies to the independent ASP storage utilization (small) field.
The verify storage utilization field returns either binary 0 or 1. If binary 0 is returned, the value returned in the total storage utilization field has been verified and it is correct. That is, all values returned in the system storage utilization and independent ASP storage utilization for varied-on independent ASPs have been verified and they are correct. If binary 1 is returned, the value returned in the total storage utilization field has not been verified and may not be correct. That is, at least one of the values returned in system storage utilization and independent ASP storage utilization for varied on independent ASPs have not been verified and may not be correct. The MATAUOBJ instruction can be used to correct all the values of storage utilization. After MATAUOBJ is issued to correct the storage utilization values, the MATUP instruction must be issued again to retrieve the corrected values.
The security function auditing field specifies whether an audit record is created for identified security-related functions. (See specific instructions for which security-related functions an audit record is to be created.)
User audit level 1, user audit level 2, and user audit level 3 specify the level of activity that is audited for this user profile.
The signal action auditing field specifies whether an audit record is created when a signal, that is not ignored, is delivered to a thread.
The program adoption auditing field specifies whether an audit record is created when authority is obtained through program adoption.
The number of independent ASP entries field is the total number of individual independent ASP information entries. 223 is returned even if number of bytes provided is not large enough to contain all of the individual independent ASP information entries.
Counts of profile entries refers to the total number of entries for each type of entry that a profile can have. This area can be formated in small or large format for the counts, and is controlled by the input bit, count format, in the materialization options of the materialization template. The output bit format of counts of profiles in the output flags identifies the format of the counts in the receiver.
The small format, as shown below, is used when the format of counts of profiles is binary zero.
|
The large format, as shown below, is used when the format of counts of profiles is binary one.
|
Ownership entries refer to the entries created in the user profile due to owned objects.
Authorization entries refer to the entries created in the user profile due to objects to which this profile has been authorized.
Authorized user entries refer to the entries created in the user profile due to owned objects which have been authorized to other user profiles.
Primary group entries refer to the entries created in the user profile due to objects for which this profile is the primary group.
Number of used entries is the number of entries currently in the user profile for the specified type of entry.
Number of possible available entries is the number of entries which can possibly be added to the user profile.
The total storage utilization (in units of 1,024 bytes) field contains the sum of the system storage utilization (storage used on the system and basic ASPs) and all the independent ASP storage utilization of independent ASPs that are currently varied on.
The storage information field refers to the total storage a user profile is using and is authorized to use. This area can be formatted in small or large format, and is controlled by the input bit storage format in the materialization options of the materialization template. The output bit storage count format identifies the format of the storage information field.
The small format, as shown below, is used when the storage count format is binary zero.
|
The large format, as shown below, is used when the storage count format is binary one.
|
System storage authorization (large) is the amount of auxiliary storage (in units of 1,024 bytes) that this user profile is authorized to use in the system ASP and basic ASPs. The combined storage of all objects this user profile owns in the system ASP and basic ASPs may not exceed this value. A value of 9,223,372,036,854,775,807 (hex 7FFFFFFFFFFFFFFF) indicates that this user profile has no limit on the amount of storage it may use (*NOMAX). This same convention also applies to the independent ASP storage authorization (large) field.
System storage utilization (large) is the current amount of auxiliary storage (in units of 1,024 bytes) allocated for the storage of objects owned by this user profile in the system ASP and basic ASPs. A value of 9,223,372,036,854,775,807 (hex 7FFFFFFFFFFFFFFF) indicates that the amount of auxiliary storage allocated is equal to or greater than 9,444,732,965,739,290,426,368 bytes.
The individual independent ASP information is an array of information for the individual independent ASPs. This array starts from the independent ASP 33 and increases sequentially to 255. As many entries as will fit in number of bytes provided will be returned up to a maximum of number of independent ASP entries. It is possible for a partial entry to be returned.
The independent ASP storage authorization field contains the maximum amount of independent auxiliary storage (in units of 1,024 bytes) that can be owned by this user profile. A value will always be returned in this field, even for an independent ASP that is varied off.
The independent ASP storage utilization field contains the current amount of independent auxiliary storage (in units of 1,024 bytes) allocated for the permanent objects owned by this user profile if the independent ASP is varied on. If the independent ASP is not varied on, 0 is returned.
The user profile extension existence flag field indicates whether or not the independent ASP has a user profile extension for this user profile. A user profile extension is stored on the independent ASP and contains information about the user profile.
If operand 2 is a system pointer, it identifies the input user profile object. If operand 2 is a space pointer, it provides addressability to the materialization template. The materialization template must be aligned on a 16-byte boundary. The format of the template is as follows:
|
The template version identifies the version of the materialization template. It must be set to hex 00.
The materialization options are options that control how the user profile data is presented in the receiver.
If the materialize for given Licensed Internal Code release bit is set to binary 1, then the operand 1 receiver will be filled in with values applicable to the Licensed Internal Code release specified by the target Licensed Internal Code release to materialize field. Fields that are not defined in the target release will be returned as hex zeroes.
The count format indicates whether the counts of profile entries are materialized in small or large format.
The storage format indicates whether the storage information is materialized in small or large format. While storage authorization (small) and storage utilization (small) will always be filled in, setting storage format to binary 1 will cause storage authorization (large) and storage utilization (large) to also be materialized. This is useful for when the values of authorized storage and/or utilized storage exceed that which can be represented in storage authorization (small) and storage utilization (small).
The target Licensed Internal Code release to materialize field is the target release specified when the materialize for given Licensed Internal Code release bit is set to binary 1. The earliest release that can be specified is Version 5, Release 1, Modification level 0. The latest release that can be specified is the current release. If an invalid release is specified, a template value invalid (hex 3801) exception is signaled.
The user profile system pointer is the user profile to be materialized.
Authorization Required
- Operational
- User profile identified by operand 2
Lock Enforcement
- Materialize
- User profile identified by operand 2
Exceptions
- 06 Addressing
- 0601 Space Addressing Violation
- 0602 Boundary Alignment
- 0603 Range
- 08 Argument/Parameter
- 0801 Parameter Reference Violation
- 0A Authorization
- 0A01 Unauthorized for Operation
- 10 Damage Encountered
- 1002 Machine Context Damage State
- 1004 System Object Damage State
- 1005 Authority Verification Terminated Due to Damaged Object
- 1044 Partial System Object Damage
- 1A Lock State
- 1A01 Invalid Lock State
- 1C Machine-Dependent
- 1C03 Machine Storage Limit Exceeded
- 20 Machine Support
- 2002 Machine Check
- 2003 Function Check
- 22 Object Access
- 2201 Object Not Found
- 2202 Object Destroyed
- 2203 Object Suspended
- 2207 Authority Verification Terminated Due to Destroyed Object
- 2208 Object Compressed
- 220B Object Not Available
- 24 Pointer Specification
- 2401 Pointer Does Not Exist
- 2402 Pointer Type Invalid
- 2403 Pointer Addressing Invalid Object Type
- 2E Resource Control Limit
- 2E01 User Profile Storage Limit Exceeded
- 36 Space Management
- 3601 Space Extension/Truncation
- 38 Template Specification
- 3801 Template Value Invalid
- 3803 Materialization Length Invalid
- 44 Protection Violation
- 4401 Object Domain or Hardware Storage Protection Violation
- 4402 Literal Values Cannot Be Changed