1 martin 1.2 //%LICENSE////////////////////////////////////////////////////////////////
|
2 martin 1.3 //
|
3 martin 1.2 // Licensed to The Open Group (TOG) under one or more contributor license
4 // agreements. Refer to the OpenPegasusNOTICE.txt file distributed with
5 // this work for additional information regarding copyright ownership.
6 // Each contributor licenses this file to you under the OpenPegasus Open
7 // Source License; you may not use this file except in compliance with the
8 // License.
|
9 martin 1.3 //
|
10 martin 1.2 // Permission is hereby granted, free of charge, to any person obtaining a
11 // copy of this software and associated documentation files (the "Software"),
12 // to deal in the Software without restriction, including without limitation
13 // the rights to use, copy, modify, merge, publish, distribute, sublicense,
14 // and/or sell copies of the Software, and to permit persons to whom the
15 // Software is furnished to do so, subject to the following conditions:
|
16 martin 1.3 //
|
17 martin 1.2 // The above copyright notice and this permission notice shall be included
18 // in all copies or substantial portions of the Software.
|
19 martin 1.3 //
|
20 martin 1.2 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
21 martin 1.3 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
22 martin 1.2 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
23 // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
24 // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
25 // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
26 // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
27 martin 1.3 //
|
28 martin 1.2 //////////////////////////////////////////////////////////////////////////
|
29 thilo.boehm 1.1 //
30 //%/////////////////////////////////////////////////////////////////////////////
31
32 #ifndef Audit_zOS_SMFStructures_h
33 #define Audit_zOS_SMFStructures_h
34
35 #pragma pack(packed)
36
37 typedef struct {
38 unsigned short SMF86LEN; // Record length
39 unsigned short SMF86SEG; // Segmentation desc.
40 unsigned char SMF86FLG; // System indicator
41 unsigned char SMF86RTY; // Record type 86 (X'56')
42 unsigned int SMF86TME; // ms Time record moved to SMF
43 unsigned char SMF86DTE[4]; // Packed BCD date (0cyyddF) record
44 // moved to SMF
45 unsigned char SMF86SID[4]; // System ID in EBCDIC
46 unsigned char SMF86SSI[4]; // SubsystemID 'CFZ' in EBCDIC
47 unsigned short SMF86STY; // Record subtype:
48 // Subtype Description
49 // 1 Authentication
50 thilo.boehm 1.1 // 2 Configuration
51 // 3 Provider Status
52 // 4 CIM Operations
53 // 5 Indicaton Operations
54 unsigned short SMF86TRN; // Number of tripltes
55 unsigned short reserverd; // Reserved
56 unsigned int SMF86PRO; // Offset to product section
57 unsigned short SMF86PRL; // Length of product section
58 unsigned short SMF86PRN; // Number of product sections (=1)
59 unsigned int SMF86STO; // Offset to subtype section
60 unsigned short SMF86STL; // Length of subtype section
61 unsigned short SMF86STN; // Number of subtype sections (=1)
62 } _smf86_header;
63
64 typedef struct {
65 unsigned int SMF86PRRVN; // SMF Record version
66 unsigned char SMF86SSI[4]; // SubSytem ID 'CFZ' in EBCDIC
67 unsigned char SMF86VRM[8]; // CIM software level 'VV.RR.MM' EBCDIC
68 unsigned char SMF86OSL[8]; // MVS software level 'VV.RR.MM' EBCDIC
69 unsigned char SMF86SYN[8]; // System name in EBCDIC
70 unsigned char SMF86SYP[8]; // Sysplex name in EBCDIC
71 thilo.boehm 1.1 unsigned int SMF86OPI; // USS process ID
72 unsigned char SMF86THID[22]; // Thread Id in EBCDIC
73 unsigned char reserved[2]; // reserved
74 } _smf86_product;
75
76 typedef struct {
77 unsigned short AuthMode; // Authentication mode:
78 // AuthMode Description
79 // 0 Local
80 // 1 Basic
81 // 2 AT-TLS
82 unsigned char UserID[8]; // User Id
83 unsigned short AuthResult; // Authentication result:
84 // AuthResult Description
85 // 0 Successful
86 // 1 Failed
87 unsigned char ClientIP[42]; // Clinet IP adresse X'00' terminated
88 unsigned char reserved[2]; // reserved
89 } _smf86_authentication;
90
91 typedef struct {
92 thilo.boehm 1.1 unsigned char UserID[8]; // User Id
93 unsigned short PropChange; // Mode of property change:
94 // PropChange Comment
95 // 0 List Conf.
96 // 1 Current Conf.
97 // 2 Planed Conf.
98 unsigned char reserved[2]; // reserved
99 unsigned int NameOf; // Offset to property name
100 // from section start
101 unsigned short NameLen; // Length of property name
102 unsigned short NameNo; // Number of property names (=1)
103 unsigned int ValueOf; // Offset to property value
104 // from section start
105 unsigned short ValueLen; // Length of property value
106 unsigned short ValueNo; // Number of property values (=1)
107 unsigned int NewValueOf; // Offset to property new value
108 // from section start
109 unsigned short NewValueLen; // Length of property new value
110 unsigned short NewValueNo; // Number of property new values (=1)
111 } _smf86_configuration;
112
113 thilo.boehm 1.1 typedef struct {
114 unsigned int CurrStatus; // The current status of prov.
115 unsigned short IsChanging; // If set to 1, then the provider is
116 // changing his state and NewStatus
117 // value is valid.
118 unsigned char reserved[2]; // reserved
119 unsigned int NewStatus; // The new status of prov.
120 unsigned int ProvNameOf; // Offset to provider name
121 unsigned short ProvNameLen; // Length of provider name
122 unsigned short ProvNameNo; // Number of provider name (=1)
123 } _smf86_provider_status;
124
125 typedef struct {
126 unsigned short CIMOpType; // The CIM operation type:
127 // CIMOpTyp Comment
128 // 0 Class oper.
129 // 1 Qualifyer oper.
130 // 2 Instance oper.
131 // 3 Invoke methode
132 unsigned char UserID[8]; // User Id
133 unsigned short CIMStatusCode; // The result status of the oper.
134 thilo.boehm 1.1 unsigned char ClientIP[42]; // Clinet IP adresse X'00' terminated
135 unsigned char reserved[2]; // reserved
136 unsigned int OperNameOf; // Offset to oper. name
137 unsigned short OperNameLen; // Length of oper. name
138 unsigned short OperNameNo; // Number of oper. name
139 unsigned int ObjPathOf; // Offset to object path
140 unsigned short ObjPathLen; // Length of object path
141 unsigned short ObjPathNo; // Number of object path
142 unsigned int NameSpaceOf; // Offset to name space
143 unsigned short NameSpaceLen; // Length of name space
144 unsigned short NameSpaceNo; // Number of name space
145 unsigned int ProvNameOf; // Offset to prov. name
146 unsigned short ProvNameLen; // Length of prov. name
147 unsigned short ProvNameNo; // Number of prov. name
148 unsigned int ProvModNameOf; // Offset to prov. module name
149 unsigned short ProvModNameLen;// Length of prov. module name
150 unsigned short ProvModNameNo; // Number of prov. module name
151 } _smf86_cim_operation;
152
153 typedef struct {
154 _smf86_header header;
155 thilo.boehm 1.1 _smf86_product product;
156 _smf86_authentication authentication;
157 } _smf86_auththentication_record;
158
159 typedef struct {
160 _smf86_header header;
161 _smf86_product product;
162 _smf86_configuration configuration;
163 } _smf86_configuration_record;
164
165 typedef struct {
166 _smf86_header header;
167 _smf86_product product;
168 _smf86_provider_status provider_status;
169 } _smf86_provider_status_record;
170
171 typedef struct {
172 _smf86_header header;
173 _smf86_product product;
174 _smf86_cim_operation cim_operation;
175 } _smf86_cim_operation_record;
176 thilo.boehm 1.1
177 typedef struct {
178 _smf86_header header;
179 _smf86_product product;
180 } _smf86_record_prolog;
181
182
183 #pragma pack(reset)
184
185 #endif // Audit_zOS_SMFStructures_h
|