COMPILATION LISTING OF SEGMENT mc_check_access_ Compiled by: Multics PL/I Compiler, Release 29, of July 28, 1986 Compiled at: Honeywell Bull, Phx. Az., Sys-M Compiled on: 08/04/87 1628.7 mst Tue Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1985 * 4* * * 5* *********************************************************** */ 6 /* mc_check_access_ -- access control for Message Coordinator */ 7 /* format: style2 */ 8 9 mc_check_access_: 10 procedure; 11 12 /**** Modification History: 13* Created 1985-01-07, BIM. */ 14 15 16 declare P_SSI_ptr pointer; 17 declare P_source_name char (*); 18 declare P_code fixed bin (35); 19 declare P_user_name char (*); 20 21 22 declare mc_check_acs_$reply entry (character (*), fixed binary (3), character (*), fixed binary (35)); 23 declare mc_check_acs_$quit entry (character (*), fixed binary (3), character (*), fixed binary (35)); 24 declare mc_check_acs_$log_daemon_in 25 entry (character (*), fixed binary (3), character (*), fixed binary (35)); 26 declare mc_check_acs_$log_daemon_out 27 entry (character (*), fixed binary (3), character (*), fixed binary (35)); 28 declare mc_check_acs_$new_proc_daemon 29 entry (character (*), fixed binary (3), character (*), fixed binary (35)); 30 declare mc_check_acs_$log_in_as_daemon 31 entry (character (*), fixed binary (3), character (*), fixed binary (35)); 32 33 declare DEFAULT_RING fixed bin (3) init (4) int static options (constant); 34 35 36 reply: 37 entry (P_SSI_ptr, P_source_name, P_code); 38 39 40 sc_subsystem_info_ptr = P_SSI_ptr; 41 call mc_check_acs_$reply (sc_subsystem_info.access_control_name, DEFAULT_RING, P_source_name, P_code); 42 return; 43 44 quit: 45 entry (P_SSI_ptr, P_source_name, P_code); 46 47 sc_subsystem_info_ptr = P_SSI_ptr; 48 call mc_check_acs_$quit (sc_subsystem_info.access_control_name, DEFAULT_RING, P_source_name, P_code); 49 return; 50 51 log_daemon_in: 52 entry (P_SSI_ptr, P_source_name, P_code); 53 54 sc_subsystem_info_ptr = P_SSI_ptr; 55 call mc_check_acs_$log_daemon_in (sc_subsystem_info.access_control_name, DEFAULT_RING, P_source_name, P_code); 56 return; 57 58 log_daemon_out: 59 entry (P_SSI_ptr, P_source_name, P_code); 60 61 sc_subsystem_info_ptr = P_SSI_ptr; 62 call mc_check_acs_$log_daemon_out (sc_subsystem_info.access_control_name, DEFAULT_RING, P_source_name, P_code); 63 return; 64 65 new_proc_daemon: 66 entry (P_SSI_ptr, P_source_name, P_code); 67 68 sc_subsystem_info_ptr = P_SSI_ptr; 69 call mc_check_acs_$new_proc_daemon (sc_subsystem_info.access_control_name, DEFAULT_RING, P_source_name, P_code); 70 return; 71 72 log_in_as_daemon: 73 entry (P_user_name, P_source_name, P_code); 74 call mc_check_acs_$log_in_as_daemon (P_user_name, DEFAULT_RING, P_source_name, P_code) 75 ; 76 return; 77 1 1 /* BEGIN: sc_subsystem_info_.incl.pl1 * * * * * */ 1 2 1 3 /* format:style3,idind30 */ 1 4 1 5 /* Created 1984-10-24 BIM */ 1 6 /* Modified 1985-01-07, BIM: access control flags that track admin and X */ 1 7 /* Modified 1985-02-18, E. Swenson to save away abort_line procedure. */ 1 8 1 9 1 10 /****^ HISTORY COMMENTS: 1 11* 1) change(87-02-17,GDixon), approve(87-07-03,MCR7680), 1 12* audit(87-07-13,Parisek), install(87-08-04,MR12.1-1056): 1 13* Correct formatting problems. Add sc_subsystem_info.flags.dont_mask_calls 1 14* switch. 1 15* 2) change(87-07-03,GDixon), approve(87-07-03,MCR7680), 1 16* audit(87-07-13,Parisek), install(87-08-04,MR12.1-1056): 1 17* Removed dont_mask_calls flag. It is no longer needed to correctly perform 1 18* masking on a per-request basis. 1 19* END HISTORY COMMENTS */ 1 20 1 21 1 22 declare sc_subsystem_info_ptr pointer; 1 23 declare 1 sc_subsystem_info aligned based (sc_subsystem_info_ptr), 1 24 2 restriction_flags bit (36) aligned, /* copied from mc atep or fabricated */ 1 25 2 flags aligned, 1 26 3 no_real_tty bit (1) unaligned, /* for sc_admin_command_ */ 1 27 3 print_ready bit (1) unal, /* on for all except the system console, */ 1 28 /* instructs sc_process_command_line_ to deal */ 1 29 /* with the prompt */ 1 30 3 the_system_console bit (1) unal, /* syserr messages are printed here (but console */ 1 31 /* recover doesn't try to fix this) copied here */ 1 32 /* from the mc_ate to save other looking in there*/ 1 33 3 printer_offed bit (1) unal, /* suppress logging */ 1 34 3 pad bit (32) unaligned, 1 35 2 source_name char (32) unaligned, 1 36 2 area_ptr pointer, 1 37 2 mc_atep pointer, /* needed to play with attachments */ 1 38 2 real_iocb pointer, /* for sc_signal_io_handler_ */ 1 39 2 hangup_entry entry (pointer) variable, 1 40 /* called on io_no_permission. */ 1 41 2 real_execute_line entry (ptr, ptr, fixed bin (21), fixed bin (35)), 1 42 2 real_locate_request entry (ptr, char (*), ptr, fixed bin (35)), 1 43 2 access_control_name char (32) unaligned, 1 44 2 real_invoke_request entry, /* since MR11 ssu_ lacks the ability to abort a */ 1 45 /* single request, we have an invoke_request that*/ 1 46 /* handles a condition to unwind the request */ 1 47 2 abort_request_label label, /* go here (nonlocally) to unwind a single request */ 1 48 2 real_abort_line entry options (variable); 1 49 1 50 declare sc_ss_area area based (sc_subsystem_info.area_ptr); 1 51 1 52 /* The following defines the user flags for the request table. */ 1 53 1 54 declare sc_rf_ptr pointer; 1 55 declare 1 sc_request_flags unaligned based (sc_rf_ptr), 1 56 2 dont_parse_arguments bit, /* reply, intercom */ 1 57 2 obsolete bit, /* warn opr to not use it */ 1 58 2 dont_mask_calls bit, /* this runs without masking ev calls */ 1 59 2 requires_as bit, /* not before AS */ 1 60 2 requires_no_as bit, /* only before AS */ 1 61 2 complete_disks_first bit, /* try to mount disks */ 1 62 2 no_login_needed bit, /* sign_on */ 1 63 2 pad bit (5), 1 64 2 restriction_type fixed bin (6) unsigned; 1 65 /* index into restriction flag string */ 1 66 1 67 1 68 /* END OF: sc_subsystem_info_.incl.pl1 * * * * * */ 78 79 80 81 end mc_check_access_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 08/04/87 1540.6 mc_check_access_.pl1 >special_ldd>install>MR12.1-1054>mc_check_access_.pl1 78 1 08/04/87 1139.1 sc_subsystem_info_.incl.pl1 >spec>install>1056>sc_subsystem_info_.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. DEFAULT_RING 000000 constant fixed bin(3,0) initial dcl 33 set ref 41* 48* 55* 62* 69* 74* P_SSI_ptr parameter pointer dcl 16 ref 36 40 44 47 51 54 58 61 65 68 P_code parameter fixed bin(35,0) dcl 18 set ref 36 41* 44 48* 51 55* 58 62* 65 69* 72 74* P_source_name parameter char unaligned dcl 17 set ref 36 41* 44 48* 51 55* 58 62* 65 69* 72 74* P_user_name parameter char unaligned dcl 19 set ref 72 74* access_control_name 34 based char(32) level 2 packed unaligned dcl 1-23 set ref 41* 48* 55* 62* 69* mc_check_acs_$log_daemon_in 000014 constant entry external dcl 24 ref 55 mc_check_acs_$log_daemon_out 000016 constant entry external dcl 26 ref 62 mc_check_acs_$log_in_as_daemon 000022 constant entry external dcl 30 ref 74 mc_check_acs_$new_proc_daemon 000020 constant entry external dcl 28 ref 69 mc_check_acs_$quit 000012 constant entry external dcl 23 ref 48 mc_check_acs_$reply 000010 constant entry external dcl 22 ref 41 sc_subsystem_info based structure level 1 dcl 1-23 sc_subsystem_info_ptr 000100 automatic pointer dcl 1-22 set ref 40* 41 47* 48 54* 55 61* 62 68* 69 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. sc_request_flags based structure level 1 packed unaligned dcl 1-55 sc_rf_ptr automatic pointer dcl 1-54 sc_ss_area based area(1024) dcl 1-50 NAMES DECLARED BY EXPLICIT CONTEXT. log_daemon_in 000140 constant entry external dcl 51 log_daemon_out 000210 constant entry external dcl 58 log_in_as_daemon 000332 constant entry external dcl 72 mc_check_access_ 000007 constant entry external dcl 9 new_proc_daemon 000260 constant entry external dcl 65 quit 000070 constant entry external dcl 44 reply 000021 constant entry external dcl 36 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 526 552 402 536 Length 760 402 24 172 123 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME mc_check_access_ 87 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME mc_check_access_ 000100 sc_subsystem_info_ptr mc_check_access_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc return_mac ext_entry ext_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. mc_check_acs_$log_daemon_in mc_check_acs_$log_daemon_out mc_check_acs_$log_in_as_daemon mc_check_acs_$new_proc_daemon mc_check_acs_$quit mc_check_acs_$reply NO EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 9 000006 36 000014 40 000034 41 000040 42 000065 44 000066 47 000103 48 000107 49 000135 51 000136 54 000153 55 000157 56 000205 58 000206 61 000223 62 000227 63 000255 65 000256 68 000273 69 000277 70 000325 72 000326 74 000352 76 000401 ----------------------------------------------------------- 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