This function is used to display the default values of protection attributes.
Users who are neither owners of the attribute guard which is to be displayed nor guards administrators can only display the attributes if they possess the authorization to access the attribute guard (SCOPE=*USER-GROUP or *HOST-SYSTEM).
Macro | Operands |
SHWATTR | MF = C / D / L / M / E ,PREFIX = D / <name 1> ,MACID = EFL / <name 3> ,PARAM = <name 1..8> ,XPAND = PARAM / OUTPUT ,ATTRGUA = ' ' / <c-string 1..24: filename 1..24 without-gen-vers> / <var: char:24> / ,OUTAREA = structure(2): (1) address: NULL / <var: pointer> |
For a description of the parameters MF, PREFIX, MACID, PARAM see the “Executive Macros” manual [16].
XPAND
specifies the declarations to expand. This operand only applies if MF=D.
=PARAM
The model of the parameter area.
=INFO
The models of the parts of the output.
ATTRGUA
Name of the attribute guard
This operand designates the name of the attribute guard of type DEFPATTR in which default values for protection attributes are to be displayed.
A value must be specified for this operand. Only uppercase characters may be used!
OUTAREA
Output area
This operand designates the address and length of the address space in which the obtained output information is entered. If all the selected rules cannot fit into the output area, an error is reported and the user calling the function must make a larger output area available.
address:
Address
Specifies the address of the output area.
The output area must be aligned on a word boundary.
len:
Length
Specifies the length of the output area.
The output area must be at least 224 bytes long.
*SUGLEN
Suggested output length for both attribute areas.
Macro return codes
SC2 | SC1 | Maincode | Meaning |
X’00’ | X’00’ | X’0000’ | class A: CMD0001 |
X’01’ | X’3100’ | class B: DEF3100 | |
X’00’ | Invalid parameter address | ||
X’00’ | X’20’ | X’3200’ | class C: DEF3200 |
X’00’ | X’40’ | X’3302’ | class D: DEF3302 |
X’00’ | X’40’ | X’3306’ | class D: DEF3306 |
X’00’ | X’40’ | X’3308’ | class D: DEF3308 |
X’00’ | X’40’ | X’3309’ | class D: DEF3309 |
X’00’ | X’40’ | X’3313’ | class D: DEF3313 |
X’00’ | X’40’ | X’3314’ | class D: DEF3314 |
X’00’ | X’40’ | X’3315’ | class D: DEF3315 |
X’00’ | X’40’ | X’3317’ | class D: Output area is not large enough |
X’00’ | X’40’ | X’3351’ | class D: DEF3351 |
X’00’ | X’80’ | X’3900’ | class E: DEF3900 |
X’00’ | X’80’ | X’3901’ | class E: DEF3901 |
X’00’ | X’80’ | X’3902’ | class E: DEF3902 |
The precise cause of the error can be determined by calling the /HELP-MSG command with the error number specified in the table, e.g. z.B. /HELP-MSG COO3902.