COMPILATION LISTING OF SEGMENT asum_error_ Compiled by: Multics PL/I Compiler, Release 28e, of February 14, 1985 Compiled at: Honeywell Multics Op. - System M Compiled on: 05/09/85 1145.2 mst Thu Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1985 * 4* * * 5* *********************************************************** */ 6 /* asum_error_ -- general error trap */ 7 8 /* format: style2 */ 9 10 /**** Written 1985-02-20 by BIM */ 11 12 asum_error_: 13 procedure options (variable); 14 15 declare error_switch bit (1) aligned; 16 declare as_user_message_error_ condition; 17 18 declare admin_gate_$syserr entry options (variable); 19 declare cu_$arg_list_ptr entry returns (ptr); 20 declare cu_$arg_ptr entry (fixed bin, ptr, fixed bin (21), fixed bin (35)); 21 declare convert_status_code_ entry (fixed binary (35), character (8) aligned, character (100) aligned); 22 declare ioa_$general_rs entry (pointer, fixed binary, fixed binary, character (*), fixed binary (21), 23 bit (1) aligned, bit (1) aligned); 24 25 26 declare ioa_ entry () options (variable); 27 1 1 /* *********************************************************** 1 2* * * 1 3* * Copyright, (C) Honeywell Information Systems Inc., 1985 * 1 4* * * 1 5* *********************************************************** */ 1 6 /* Begin include file asum_data_.incl.pl1 */ 1 7 /* Definitions in asum_data_ (as_user_message_data_) BIM 1985-01-17 */ 1 8 /* format: style3 */ 1 9 1 10 declare asum_data_$acl_entries 1 11 bit (36) aligned ext; /* base acl array here */ 1 12 declare asum_data_$db_dir char (168) ext; 1 13 declare asum_data_$db_multiclass 1 14 bit (1) aligned ext; 1 15 declare asum_data_$n_acl_entries 1 16 fixed bin ext; 1 17 declare asum_data_$db_cbi bit (36) aligned ext; /* No need to declare the whole structure here */ 1 18 declare asum_data_$db_dir_cbi 1 19 bit (36) aligned ext; /* No need to declare the whole structure here */ 1 20 declare asum_data_$db_dir_rb 1 21 (2) fixed bin (3) ext; 1 22 declare asum_data_$db_rb (3) fixed bin (3) ext; 1 23 declare asum_data_$db_locked 1 24 bit (1) aligned ext; 1 25 declare asum_data_$process_info_ptr 1 26 pointer static ext; 1 27 declare asum_data_$system_info_ptr 1 28 pointer static ext; 1 29 declare asum_data_$entry_ring 1 30 fixed bin (3) static ext; 1 31 declare asum_data_$lock_id bit (36) aligned ext; 1 32 declare asum_data_$process_id 1 33 bit (36) aligned ext; 1 34 1 35 /* End include file asum_data_.incl.pl1 */ 28 2 1 /* BEGIN INCLUDE FILE syserr_constants.incl.pl1 ... 11/11/80 W. Olin Sibert */ 2 2 /* 85-02-12, EJ Sharpe - Added sorting class constants, removed AIM_MESSAGE, added new action code names. */ 2 3 /* 85-04-24, G. Palter - Renamed SYSERR_UNUSED_10 to SYSERR_RING1_ERROR to reflect its actual use. */ 2 4 2 5 /* This include file has an ALM version. Keep 'em in sync! */ 2 6 2 7 dcl ( 2 8 2 9 /* The following constants define the message action codes. This indicates 2 10*how a message is to be handled. */ 2 11 2 12 SYSERR_CRASH_SYSTEM init (1), 2 13 CRASH init (1), /* Crash the system, and bleat plaintively. */ 2 14 2 15 SYSERR_TERMINATE_PROCESS init (2), 2 16 TERMINATE_PROCESS init (2), /* Terminate the process, print the message, and beep. */ 2 17 2 18 SYSERR_PRINT_WITH_ALARM init (3), 2 19 BEEP init (3), /* Beep and print the message on the console. */ 2 20 2 21 SYSERR_PRINT_ON_CONSOLE init (0), 2 22 ANNOUNCE init (0), /* Just print the message on the console. */ 2 23 2 24 SYSERR_LOG_OR_PRINT init (4), 2 25 LOG init (4), /* Log the message, or print it if it can't be logged */ 2 26 2 27 SYSERR_LOG_OR_DISCARD init (5), 2 28 JUST_LOG init (5), /* Just try to log the message, and discard it if it can't be */ 2 29 2 30 2 31 /* The following constants are added to the normal severities to indicate 2 32*different sorting classes of messages. */ 2 33 2 34 SYSERR_SYSTEM_ERROR init (00), /* indicates a standard level system error */ 2 35 SYSERR_RING1_ERROR init (10), /* indicates an error detected in ring 1 (mseg_, RCP) */ 2 36 SYSERR_COVERT_CHANNEL init (20), /* indicates covert channel audit trail message */ 2 37 SYSERR_UNSUCCESSFUL_ACCESS init (30), /* indicates access denial audit trail message */ 2 38 SYSERR_SUCCESSFUL_ACCESS init (40) /* indicates access grant audit trail message */ 2 39 ) fixed bin internal static options (constant); 2 40 2 41 /* END INCLUDE FILE syserr_constants.incl.pl1 */ 29 30 31 32 declare code_ptr pointer; 33 declare code fixed bin (35) based (code_ptr); 34 declare error_message char (100) aligned; 35 declare message_1 char (1000); 36 declare name_ptr ptr; 37 declare name_length fixed bin (21); 38 declare name char (name_length) based (name_ptr); 39 40 41 error_switch = "1"b; 42 go to COMMON; 43 log: 44 entry; 45 error_switch = "0"b; 46 47 COMMON: 48 call cu_$arg_ptr (1, code_ptr, (0), (0)); 49 if code ^= 0 50 then call convert_status_code_ (code, "", error_message); 51 else error_message = ""; 52 53 call cu_$arg_ptr (2, name_ptr, name_length, (0)); 54 message_1 = ""; 55 call ioa_$general_rs (cu_$arg_list_ptr (), 3, 4, message_1, (0), "0"b, "0"b); 56 if asum_data_$db_multiclass 57 then call admin_gate_$syserr (LOG, "^a: ^a ^a", name, error_message, message_1); 58 else call ioa_ ("^a: ^a ^a", name, error_message, message_1); 59 if error_switch 60 then signal as_user_message_error_; 61 end asum_error_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 05/07/85 1544.3 asum_error_.pl1 >spec>on>mseg>asum_error_.pl1 28 1 03/19/85 1613.7 asum_data_.incl.pl1 >ldd>include>asum_data_.incl.pl1 29 2 05/06/85 1122.0 syserr_constants.incl.pl1 >spec>on>mseg>syserr_constants.incl.pl1 NAMES DECLARED IN THIS COMPILATION. IDENTIFIER OFFSET LOC STORAGE CLASS DATA TYPE ATTRIBUTES AND REFERENCES (* indicates a set context) NAMES DECLARED BY DECLARE STATEMENT. LOG 000006 constant fixed bin(17,0) initial dcl 2-7 set ref 56* admin_gate_$syserr 000010 constant entry external dcl 18 ref 56 as_user_message_error_ 000102 stack reference condition dcl 16 ref 59 asum_data_$db_multiclass 000024 external static bit(1) dcl 1-13 ref 56 code based fixed bin(35,0) dcl 33 set ref 49 49* code_ptr 000110 automatic pointer dcl 32 set ref 47* 49 49 convert_status_code_ 000016 constant entry external dcl 21 ref 49 cu_$arg_list_ptr 000012 constant entry external dcl 19 ref 55 55 cu_$arg_ptr 000014 constant entry external dcl 20 ref 47 53 error_message 000112 automatic char(100) dcl 34 set ref 49* 51* 56* 58* error_switch 000100 automatic bit(1) dcl 15 set ref 41* 45* 59 ioa_ 000022 constant entry external dcl 26 ref 58 ioa_$general_rs 000020 constant entry external dcl 22 ref 55 message_1 000143 automatic char(1000) unaligned dcl 35 set ref 54* 55* 56* 58* name based char unaligned dcl 38 set ref 56* 58* name_length 000540 automatic fixed bin(21,0) dcl 37 set ref 53* 56 56 58 58 name_ptr 000536 automatic pointer dcl 36 set ref 53* 56 58 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ANNOUNCE internal static fixed bin(17,0) initial dcl 2-7 BEEP internal static fixed bin(17,0) initial dcl 2-7 CRASH internal static fixed bin(17,0) initial dcl 2-7 JUST_LOG internal static fixed bin(17,0) initial dcl 2-7 SYSERR_COVERT_CHANNEL internal static fixed bin(17,0) initial dcl 2-7 SYSERR_CRASH_SYSTEM internal static fixed bin(17,0) initial dcl 2-7 SYSERR_LOG_OR_DISCARD internal static fixed bin(17,0) initial dcl 2-7 SYSERR_LOG_OR_PRINT internal static fixed bin(17,0) initial dcl 2-7 SYSERR_PRINT_ON_CONSOLE internal static fixed bin(17,0) initial dcl 2-7 SYSERR_PRINT_WITH_ALARM internal static fixed bin(17,0) initial dcl 2-7 SYSERR_RING1_ERROR internal static fixed bin(17,0) initial dcl 2-7 SYSERR_SUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 2-7 SYSERR_SYSTEM_ERROR internal static fixed bin(17,0) initial dcl 2-7 SYSERR_TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 2-7 SYSERR_UNSUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 2-7 TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 2-7 asum_data_$acl_entries external static bit(36) dcl 1-10 asum_data_$db_cbi external static bit(36) dcl 1-17 asum_data_$db_dir external static char(168) unaligned dcl 1-12 asum_data_$db_dir_cbi external static bit(36) dcl 1-18 asum_data_$db_dir_rb external static fixed bin(3,0) array dcl 1-20 asum_data_$db_locked external static bit(1) dcl 1-23 asum_data_$db_rb external static fixed bin(3,0) array dcl 1-22 asum_data_$entry_ring external static fixed bin(3,0) dcl 1-29 asum_data_$lock_id external static bit(36) dcl 1-31 asum_data_$n_acl_entries external static fixed bin(17,0) dcl 1-15 asum_data_$process_id external static bit(36) dcl 1-32 asum_data_$process_info_ptr external static pointer dcl 1-25 asum_data_$system_info_ptr external static pointer dcl 1-27 NAMES DECLARED BY EXPLICIT CONTEXT. COMMON 000045 constant label dcl 47 ref 42 asum_error_ 000026 constant entry external dcl 12 log 000037 constant entry external dcl 43 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 432 460 316 442 Length 664 316 26 170 113 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME asum_error_ 400 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME asum_error_ 000100 error_switch asum_error_ 000110 code_ptr asum_error_ 000112 error_message asum_error_ 000143 message_1 asum_error_ 000536 name_ptr asum_error_ 000540 name_length asum_error_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return signal ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. admin_gate_$syserr convert_status_code_ cu_$arg_list_ptr cu_$arg_ptr ioa_ ioa_$general_rs THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. asum_data_$db_multiclass LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 12 000025 41 000033 42 000035 43 000036 45 000044 47 000045 49 000066 51 000106 53 000111 54 000131 55 000134 56 000212 58 000255 59 000310 61 000315 ----------------------------------------------------------- Historical Background This edition of the Multics software materials and documentation is provided and donated to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc. as a contribution to computer science knowledge. This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL and BULL HN Information Systems Inc. to the development of this operating system. Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for managing computer hardware properly and for executing programs. Many subsequent operating systems incorporated Multics principles. Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . ----------------------------------------------------------- Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without fee is hereby granted,provided that the below copyright notice and historical background appear in all copies and that both the copyright notice and historical background and this permission notice appear in supporting documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining to distribution of the programs without specific prior written permission. Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. Copyright 2006 by BULL HN Information Systems Inc. Copyright 2006 by Bull SAS All Rights Reserved