1 /*  BEGIN:   as_audit_structures.incl.pl1                     *  *  *  *  *  */
  2 
  3 /****^  HISTORY COMMENTS:
  4   1) change(84-01-17,Swenson), approve(), audit(), install():
  5      Initial coding.
  6   2) change(87-06-08,GDixon), approve(87-07-13,MCR7741),
  7      audit(87-07-31,Brunelle), install(87-08-04,MR12.1-1056):
  8       A) Add AS_AUDIT_CHANNEL_ACTIONS, AS_AUDIT_CHANNEL_DIRECTION, and
  9          AS_AUDIT_CHANNEL_SERVICE_INFO arrays.
 10       B) Add channel audit actions for dialin, dialout and dial system.
 11       C) Correct declaration of as_channel_audit_record_.pad2.
 12       D) Revise channel_audit_info.
 13   3) change(87-07-15,GDixon), approve(87-07-15,MCR7741),
 14      audit(87-07-31,Brunelle), install(87-08-04,MR12.1-1056):
 15       A) Add AS_AUDIT_PROCESS_TERMINATE action code.
 16                                                    END HISTORY COMMENTS */
 17 
 18 /* format: style2 */
 19 
 20 /* This include file describes the binary data associated with
 21    Answering Service audit records.  */
 22 
 23 /**** This first structure defines the Identification and Authentication
 24       (I&A) audit records associated with login attempts for interactive
 25       and daemon logins */
 26 
 27      dcl     1 as_ia_audit_record_int_dmn
 28                                     structure aligned based,
 29                2 header             like audit_record_header aligned,
 30                2 record             like as_ia_audit_record_;
 31 
 32 /**** This one is for absentee logins which are not proxy absentees */
 33 
 34      dcl     1 as_ia_audit_record_abs
 35                                     structure aligned based,
 36                2 header             like audit_record_header aligned,
 37                2 record             like as_ia_audit_record_,
 38                2 absentee_input_path
 39                                     char (168);
 40 
 41      dcl     1 as_ia_audit_record_abs_proxy
 42                                     structure aligned based,
 43                2 header             like audit_record_header aligned,
 44                2 record             like as_ia_audit_record_,
 45                2 absentee_input_path
 46                                     char (168),
 47                2 proxy_user         char (32);
 48 
 49 /**** The following structure is common to all the I&A records.  It
 50       contains the relevant information about the I&A process. */
 51 
 52      dcl     1 as_ia_audit_record_  structure aligned based,
 53                2 type               fixed bin (9) unsigned unaligned,
 54                2 version            fixed bin (9) unsigned unaligned,
 55                2 process_type       fixed bin (3) unsigned unaligned,
 56                2 min_ring           fixed bin (3) unsigned unaligned,
 57                2 max_ring           fixed bin (3) unsigned unaligned,
 58                2 pad1               bit (9) unaligned,
 59                2 attributes         like user_attributes,
 60                2 audit_flags        bit (36) aligned,
 61                2 channel            char (32) aligned,
 62                2 terminal_type      char (32) aligned,
 63                2 answerback         char (4) aligned;
 64 
 65 /**** The following structure represents the binary information
 66       associated with a communications channel access audit message. */
 67 
 68      dcl     1 as_channel_audit_record
 69                                     structure aligned based,
 70                2 header             like audit_record_header aligned,
 71                2 record             like as_channel_audit_record_;
 72 
 73 
 74      dcl     1 as_channel_audit_record_
 75                                     structure aligned based,
 76                2 type               fixed bin (9) unsigned unaligned,
 77                2 version            fixed bin (9) unsigned unaligned,
 78                2 flags              unaligned,
 79                  3 channel_info_valid
 80                                     bit (1) unaligned,
 81                  3 current_access_class_valid
 82                                     bit (1) unaligned,
 83                  3 pad1             bit (16) unaligned,
 84                2 channel_name       char (32),
 85                2 current_access_class
 86                                     (2) bit (72) aligned,
 87                2 access_class_range (2) bit (72) aligned,
 88                2 current_service_type
 89                                     fixed bin (17) unaligned,
 90                2 service_type       fixed bin (17) unaligned,
 91                2 terminal_type      char (32),
 92                2 authenticated_user aligned,
 93                  3 personid         char (22) unaligned,
 94                  3 projectid        char (9) unaligned,
 95                  3 pad2             bit (9) unaligned;
 96 
 97 /**** The following structure represents the binary information
 98       associated with a dial service audit record */
 99 
100      dcl     1 as_dial_service_audit_record
101                                     structure aligned based,
102                2 header             like audit_record_header aligned,
103                2 record             like as_dial_service_audit_record_;
104 
105      dcl     1 as_dial_service_audit_record_
106                                     structure aligned based,
107                2 type               fixed bin (9) unsigned unaligned,
108                2 version            fixed bin (9) unsigned unaligned,
109                2 dial_server_ring   fixed bin (3) unsigned unaligned,
110                2 flags              unaligned,
111                  3 registered_server
112                                     bit (1) unaligned,
113                  3 privileged_server
114                                     bit (1) unaligned,
115                  3 pad1             bit (13) unaligned,
116                2 dial_qualifier     char (32);
117 
118 /**** The following structure is used by dial_ctl_ to pass the required
119       information to as_access_audit_.  This structure is necessary since
120       the data is not available in the user_table_entry or cdte. */
121 
122      dcl     dial_server_info_ptr   ptr;                    /* pointer to following structure */
123 
124      dcl     1 dial_server_info     structure aligned based (dial_server_info_ptr),
125                2 server_ring        fixed bin (3) unaligned,
126                2 flags              unaligned,
127                  3 registered       bit (1) unaligned,
128                  3 privileged       bit (1) unaligned,
129                  3 pad1             bit (31) unaligned,
130                2 dial_qualifier     char (32);
131 
132 /**** The following structure is used by dial_ctl_ to pass relevant information
133       to as_access_audit_.  The channel name is passed here when we do not
134       have a cdtep, for instance. */
135 
136      dcl     channel_audit_info_ptr ptr;
137 
138      dcl     1 channel_audit_info   aligned based (channel_audit_info_ptr),
139                2 channel_name       char (32),
140                2 valid,
141                 (3 service_info,
142                  3 access_class,
143                  3 access_class_range,
144                  3 user_validation_level)
145                                     bit(1) unal,
146                  3 mbz              bit(32) unal,
147                2 service_info       char (32),
148                2 access_class       bit(72) aligned,
149                2 access_class_range (2) bit(72) aligned,
150                2 user_validation_level
151                                     fixed bin (3);
152 
153      dcl     AS_AUDIT_RECORD_IA_VERSION_1
154                                     fixed bin (9) initial (1) internal static options (constant);
155 
156      dcl     AS_AUDIT_RECORD_CHN_VERSION_1
157                                     fixed bin (9) initial (1) internal static options (constant);
158 
159      dcl     AS_AUDIT_RECORD_DIALID_VERSION_1
160                                     fixed bin (9) initial (1) internal static options (constant);
161 
162      dcl     (
163              AS_AUDIT_PROCESS_CREATE
164                                     initial (1),
165              AS_AUDIT_PROCESS_DESTROY
166                                     initial (2),
167              AS_AUDIT_PROCESS_CONNECT
168                                     initial (3),
169              AS_AUDIT_PROCESS_DISCONNECT
170                                     initial (4),
171              AS_AUDIT_PROCESS_TERMINATE
172                                     initial (5)
173              )                      fixed bin (17) internal static options (constant);
174 
175      dcl     (
176              AS_AUDIT_CHANNEL_ATTACH
177                                     initial (1),
178              AS_AUDIT_CHANNEL_DETACH
179                                     initial (2),
180              AS_AUDIT_CHANNEL_DIALIN
181                                     initial (3),
182              AS_AUDIT_CHANNEL_DIALOUT
183                                     initial (4),
184              AS_AUDIT_CHANNEL_DIAL_SYSTEM
185                                     initial (5)
186              )                      fixed bin (17) internal static options (constant);
187 
188      dcl     (
189              AS_AUDIT_DIALID_START  initial (1),
190              AS_AUDIT_DIALID_STOP   initial (2)
191              )                      fixed bin (17) internal static options (constant);
192 
193      dcl     AS_AUDIT_CHANNEL_ACTIONS
194                                     (5) char (12) internal static options (constant)
195                                     initial ("ATTACH", "DETACH", "DIALIN", "DIALOUT", "DIAL SYSTEM");
196      dcl     AS_AUDIT_CHANNEL_DIRECTION
197                                     (5) char (4) internal static options (constant)
198                                     initial ("to", "from", "to", "from", "to");
199      dcl     AS_AUDIT_CHANNEL_SERVICE_INFO
200                                     (5) char (12) internal static options (constant)
201                                     initial ("Service", "Service", "Dial ID", "Destination", "VChannel");
202      dcl     AS_AUDIT_PROCESS_ACTIONS
203                                     (5) char (10) internal static options (constant)
204                                     initial ("CREATE", "DESTROY", "CONNECT", "DISCONNECT", "TERMINATE");
205 
206 /*  END OF:  as_audit_structures.incl.pl1                     *  *  *  *  *  */