COMPILATION LISTING OF SEGMENT defer_messages Compiled by: Multics PL/I Compiler, Release 28d, of October 4, 1983 Compiled at: Honeywell Multics Op. - System M Compiled on: 01/07/85 1426.2 mst Mon Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1984 * 4* * * 5* *********************************************************** */ 6 /* This module implements the following commands: 7* 8* defer_messages (dm) - command to defer printing of interactive 9* messages until either the immediate_messages or accept_messages 10* commands are used. 11* immediate_messages (im) - command to resume printing of interactive 12* messages. 13**/ 14 /* Written 12/26/83 by Jim Lippard */ 15 /* Modified 11/30/84 by Jim Lippard to make immediate_messages print out 16* messages received while messages were not being accepted. */ 17 /* Modified 12/12/84 by Jim Lippard to make immediate_messages print all 18* unseen messages. */ 19 defer_messages: dm: procedure options (variable); 20 dcl ME char (18); 21 dcl VERSION char (3) internal static options (constant) initial ("1.2"); 22 23 dcl com_err_ entry () options (variable); 24 25 dcl expand_pathname_$add_suffix entry (char (*), char (*), char (*), char (*), fixed bin (35)); 26 27 dcl get_system_free_area_ entry () returns (ptr); 28 29 dcl mlsys_utils_$parse_mailbox_control_args entry (ptr, fixed bin, ptr, char (*), char (*), fixed bin (35)); 30 31 dcl message_facility_$get_msg_array_ptr entry (ptr, ptr, ptr, fixed bin, fixed bin (35)); 32 dcl message_facility_$get_msgf_mbx_ptr entry (char (*), char (*), ptr, fixed bin (35)); 33 dcl message_facility_$get_wakeup_state entry (ptr, bit (*), fixed bin (35)); 34 dcl message_facility_$set_wakeup_state entry (ptr, bit (*), fixed bin (35)); 35 dcl message_facility_$wakeup_processor entry (ptr); 36 37 dcl pathname_ entry (char (*), char (*)) returns (char (168)); 38 39 dcl ssu_$abort_line entry () options (variable); 40 dcl ssu_$arg_count entry (ptr, fixed bin); 41 dcl ssu_$arg_ptr entry (ptr, fixed bin, ptr, fixed bin (21)); 42 dcl ssu_$destroy_invocation entry (ptr); 43 dcl ssu_$standalone_invocation entry (ptr, char (*), char (*), ptr, entry, fixed bin (35)); 44 45 dcl user_info_$whoami entry (char (*), char (*), char (*)); 46 47 dcl cleanup condition; 48 49 dcl arg_count fixed bin; 50 dcl arg_ptr ptr; 51 dcl arg_len fixed bin (21); 52 dcl arg char (arg_len) based (arg_ptr); 53 54 dcl new_wakeup_state bit (2) aligned; 55 56 dcl dname char (168); 57 dcl ename char (32); 58 59 dcl flags bit (5); 60 61 dcl idx fixed bin; 62 63 dcl 1 local_eci aligned like event_call_info; 64 dcl 1 local_pcao aligned like parse_ca_options; 65 66 dcl msgf_mbx_ptr ptr; 67 68 dcl path bit (1) aligned; 69 70 dcl person char (22); 71 dcl project char (9); 72 73 dcl sci_ptr ptr; 74 75 dcl sys_area_ptr ptr; 76 dcl sys_area area based (sys_area_ptr); 77 78 dcl (addr, null, rtrim, unspec) builtin; 79 80 dcl code fixed bin (35); 81 82 dcl error_table_$noarg fixed bin (35) ext static; 83 84 dcl TRUE bit (1) internal static options (constant) init ("1"b); 85 dcl FALSE bit (1) internal static options (constant) init ("0"b); 86 87 ME = "defer_messages"; 88 new_wakeup_state = DEFER_MESSAGES; 89 go to COMMON; 90 91 immediate_messages: im: entry; 92 ME = "immediate_messages"; 93 new_wakeup_state = ACCEPT_MESSAGES; 94 95 COMMON: 96 97 /* initialize variables */ 98 path = FALSE; 99 msg_array_ptr, sci_ptr, sys_area_ptr = null (); 100 101 on cleanup call cleanup_dm; 102 103 /* create ssu_ invocation */ 104 call ssu_$standalone_invocation (sci_ptr, ME, VERSION, null (), abort_dm, code); 105 106 if code ^= 0 then do; 107 call com_err_ (code, ME, "Creating standalone subsystem invocation."); 108 return; 109 end; 110 111 /* process arguments */ 112 call ssu_$arg_count (sci_ptr, arg_count); 113 114 do idx = 1 to arg_count; 115 call ssu_$arg_ptr (sci_ptr, idx, arg_ptr, arg_len); 116 if arg = "-pathname" | arg = "-pn" then do; 117 idx = idx + 1; 118 if idx > arg_count then call ssu_$abort_line (sci_ptr, error_table_$noarg, 119 "A pathname must be specified after ""^a"".", arg); 120 121 if path then call ssu_$abort_line (sci_ptr, (0), 122 "Usage: ^[dm^;im^] {mbx_specification}", (ME = "defer_messages")); 123 124 call ssu_$arg_ptr (sci_ptr, idx, arg_ptr, arg_len); 125 call expand_pathname_$add_suffix (arg, "mbx", dname, ename, code); 126 127 if code ^= 0 then call ssu_$abort_line (sci_ptr, code, "^a", arg); 128 129 path = TRUE; 130 end; 131 else do; 132 /* let mlsys_utils_ have at it */ 133 local_pcao.version = PARSE_CA_OPTIONS_VERSION_1; 134 local_pcao.logbox_creation_mode = DONT_CREATE_MAILBOX; 135 local_pcao.savebox_creation_mode = DONT_CREATE_MAILBOX; 136 local_pcao.abort_on_errors = TRUE; 137 local_pcao.validate_addresses = FALSE; 138 local_pcao.mbz = ""b; 139 140 call mlsys_utils_$parse_mailbox_control_args (sci_ptr, idx, addr (local_pcao), dname, ename, code); 141 142 if code ^= 0 then call ssu_$abort_line (sci_ptr, code); 143 144 if path then call ssu_$abort_line (sci_ptr, (0), 145 "Usage: ^[dm^;im^] {mbx_specification}", (ME = "defer_messages")); 146 idx = idx - 1; 147 148 path = TRUE; 149 end; 150 end; 151 152 if ^path then do; 153 call user_info_$whoami (person, project, ""); 154 dname = ">udd>" || rtrim (project) || ">" || rtrim (person); 155 ename = rtrim (person) || ".mbx"; 156 end; 157 158 call message_facility_$get_msgf_mbx_ptr (dname, ename, msgf_mbx_ptr, code); 159 160 if code ^= 0 then call ssu_$abort_line (sci_ptr, code, "^a", pathname_ (dname, ename)); 161 162 call message_facility_$get_wakeup_state (msgf_mbx_ptr, flags, code); 163 164 if code ^= 0 then call ssu_$abort_line (sci_ptr, code, "^a", pathname_ (dname, ename)); 165 166 if new_wakeup_state = ACCEPT_MESSAGES then do; /* immediate_messages needs to print "pending" messages */ 167 168 sys_area_ptr = get_system_free_area_ (); 169 170 call message_facility_$get_msg_array_ptr (msgf_mbx_ptr, sys_area_ptr, msg_array_ptr, n_messages, code); 171 172 if code ^= 0 then call ssu_$abort_line (sci_ptr, code, 173 "Getting message array pointer. ^a", pathname_ (dname, ename)); 174 175 do idx = 1 to n_messages; 176 if ^msg_array.printed (idx) then call print_message (idx); 177 end; 178 end; 179 180 addr (flags) -> wakeup_flags.wakeup_state = new_wakeup_state; 181 182 call message_facility_$set_wakeup_state (msgf_mbx_ptr, flags, code); 183 184 if code ^= 0 then call ssu_$abort_line (sci_ptr, code, "^a", pathname_ (dname, ename)); 185 186 call cleanup_dm; 187 188 RETURN_FROM_DM: 189 return; 190 191 cleanup_dm: proc; 192 if msg_array_ptr ^= null () then free msg_array in (sys_area); 193 if sci_ptr ^= null () then call ssu_$destroy_invocation (sci_ptr); 194 return; 195 end; 196 197 abort_dm: proc; 198 call cleanup_dm; 199 go to RETURN_FROM_DM; 200 end abort_dm; 201 202 /* This procedure prints a message. */ 203 print_message: procedure (P_message_index); 204 dcl P_message_index fixed bin parm; 205 206 /* Set up bogotified event_call_info. None of this info is used except 207* for local_eci.message and local_eci.data_ptr. */ 208 local_eci.channel_id = 0; 209 unspec (local_eci.message) = unspec (msg_array.message_id (P_message_index)); 210 local_eci.sender = ""b; 211 local_eci.dev_signal = ""b; 212 local_eci.ring = 0; 213 local_eci.data_ptr = msgf_mbx_ptr; 214 215 call message_facility_$wakeup_processor (addr (local_eci)); 216 end print_message; 217 218 1 1 /* BEGIN INCLUDE FILE event_call_info.incl.pl1 */ 1 2 1 3 /* T. Casey, May 1978 */ 1 4 1 5 dcl event_call_info_ptr ptr; 1 6 1 7 dcl 1 event_call_info aligned based (event_call_info_ptr), /* argument structure passed to event call procedure */ 1 8 2 channel_id fixed bin (71), /* event channel on which wakeup occurred */ 1 9 2 message fixed bin (71), /* 72 bits of information passed by sender of wakeup */ 1 10 2 sender bit (36), /* process id of sender */ 1 11 2 origin, 1 12 3 dev_signal bit (18) unaligned, /* "1"b if device signal */ 1 13 3 ring fixed bin (17) unaligned, /* ring from which sent */ 1 14 2 data_ptr ptr; /* ptr given to dcl_event_call_channel */ 1 15 1 16 /* END INCLUDE FILE event_call_info.incl.pl1 */ 219 220 2 1 /* BEGIN INCLUDE FILE ... mlsys_parse_ca_options.incl.pl1 */ 2 2 /* Created: June 1983 by G. Palter */ 2 3 /* Modified: March 1984 by G. Palter to remove ignore_log_save option */ 2 4 2 5 /* Options for the mlsys_utils_$parse_address_control_arguments, mlsys_utils_$parse_address_list_control_arguments, and 2 6* mlsys_utils_$parse_mailbox_control_arguments entrypoints */ 2 7 2 8 dcl 1 parse_ca_options aligned based (parse_ca_options_ptr), 2 9 2 version character (8) unaligned, 2 10 2 logbox_creation_mode fixed binary, /* specifies the action to be taken if the address/mailbox is 2 11* the user's logbox, address/mailbox validation is requested, 2 12* and the logbox does not exist */ 2 13 2 savebox_creation_mode fixed binary, /* ... same as above but for any savebox */ 2 14 2 flags, 2 15 3 abort_on_errors bit (1) unaligned, /* ON => use ssu_$abort_line to report errors (ie: abort on 2 16* the first error); OFF => use ssu_$print_message */ 2 17 3 validate_addresses bit (1) unaligned, /* ON => validate the existence of the address/mailbox; 2 18* OFF => only validate the command/request line syntax */ 2 19 3 mbz bit (34) unaligned; /* must be set to ""b by the caller */ 2 20 2 21 dcl PARSE_CA_OPTIONS_VERSION_1 character (8) static options (constant) initial ("mlspca01"); 2 22 2 23 dcl parse_ca_options_ptr pointer; 2 24 2 25 2 26 /* Defined logbox/savebox creation modes */ 2 27 2 28 dcl (DONT_CREATE_MAILBOX initial (0), /* do not create the mailbox and issue an error message */ 2 29 QUERY_TO_CREATE_MAILBOX initial (1), /* ask the user for permission to create the mailbox */ 2 30 CREATE_AND_ANNOUNCE_MAILBOX initial (2), /* create the mailbox and inform the user of this action */ 2 31 SILENTLY_CREATE_MAILBOX initial (3)) /* create the mailbox but don't inform the user */ 2 32 fixed binary static options (constant); 2 33 2 34 /* END INCLUDE FILE ... mlsys_parse_ca_options.incl.pl1 */ 221 222 3 1 /* BEGIN INCLUDE FILE msg_array.incl.pl1 */ 3 2 /* Written 05/29/84 by Jim Lippard */ 3 3 3 4 dcl 1 msg_array (n_messages) aligned based (msg_array_ptr), 3 5 2 message_id bit (72), 3 6 2 message_number fixed bin, 3 7 2 flags, 3 8 3 printed bit (1) unal, 3 9 3 mbz bit (35) unal; 3 10 3 11 dcl msg_array_ptr ptr; 3 12 3 13 dcl n_messages fixed bin; 3 14 3 15 dcl DELETE_UNHELD bit (3) internal static options (constant) init ("100"b); 3 16 dcl DONT_DELETE_MESSAGES bit (3) internal static options (constant) init ("010"b); 3 17 dcl DONT_DELETE_NOTIFICATIONS bit (3) internal static options (constant) init ("001"b); 3 18 3 19 /* END INCLUDE FILE msg_array.incl.pl1 */ 223 224 4 1 /* BEGIN INCLUDE FILE msg_wakeup_flags.incl.pl1 */ 4 2 /* Written 08/24/84 by Jim Lippard */ 4 3 4 4 dcl 1 wakeup_flags unaligned based, 4 5 2 hold_messages bit (1), 4 6 2 hold_notifications bit (1), 4 7 2 print_notifications bit (1), 4 8 2 wakeup_state bit (2), 4 9 2 mbz bit (31); 4 10 4 11 dcl ACCEPT_MESSAGES bit (2) internal static options (constant) init ("10"b); 4 12 dcl DEFER_MESSAGES bit (2) internal static options (constant) init ("01"b); 4 13 4 14 /* END INCLUDE FILE msg_wakeup_flags.incl.pl1 */ 225 226 end defer_messages; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 01/07/85 1418.2 defer_messages.pl1 >spec>online>6946.pbf>defer_messages.pl1 219 1 06/29/79 1728.0 event_call_info.incl.pl1 >ldd>include>event_call_info.incl.pl1 221 2 06/18/84 1324.1 mlsys_parse_ca_options.incl.pl1 >ldd>include>mlsys_parse_ca_options.incl.pl1 223 3 11/08/84 0926.0 msg_array.incl.pl1 >ldd>include>msg_array.incl.pl1 225 4 11/08/84 0926.0 msg_wakeup_flags.incl.pl1 >ldd>include>msg_wakeup_flags.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. ACCEPT_MESSAGES constant bit(2) initial unaligned dcl 4-11 ref 93 166 DEFER_MESSAGES constant bit(2) initial unaligned dcl 4-12 ref 88 DONT_CREATE_MAILBOX constant fixed bin(17,0) initial dcl 2-28 ref 134 135 FALSE constant bit(1) initial unaligned dcl 85 ref 95 137 ME 000100 automatic char(18) unaligned dcl 20 set ref 87* 92* 104* 107* 121 144 PARSE_CA_OPTIONS_VERSION_1 000000 constant char(8) initial unaligned dcl 2-21 ref 133 P_message_index parameter fixed bin(17,0) dcl 204 ref 203 209 TRUE constant bit(1) initial unaligned dcl 84 ref 129 136 148 VERSION 000002 constant char(3) initial unaligned dcl 21 set ref 104* abort_on_errors 4 000216 automatic bit(1) level 3 packed unaligned dcl 64 set ref 136* addr builtin function dcl 78 ref 140 140 180 215 215 arg based char unaligned dcl 52 set ref 116 116 118* 125* 127* arg_count 000114 automatic fixed bin(17,0) dcl 49 set ref 112* 114 118 arg_len 000120 automatic fixed bin(21,0) dcl 51 set ref 115* 116 116 118 118 124* 125 125 127 127 arg_ptr 000116 automatic pointer dcl 50 set ref 115* 116 116 118 124* 125 127 channel_id 000206 automatic fixed bin(71,0) level 2 dcl 63 set ref 208* cleanup 000106 stack reference condition dcl 47 ref 101 code 000244 automatic fixed bin(35,0) dcl 80 set ref 104* 106 107* 125* 127 127* 140* 142 142* 158* 160 160* 162* 164 164* 170* 172 172* 182* 184 184* com_err_ 000010 constant entry external dcl 23 ref 107 data_ptr 6 000206 automatic pointer level 2 dcl 63 set ref 213* dev_signal 5 000206 automatic bit(18) level 3 packed unaligned dcl 63 set ref 211* dname 000122 automatic char(168) unaligned dcl 56 set ref 125* 140* 154* 158* 160* 160* 164* 164* 172* 172* 184* 184* ename 000174 automatic char(32) unaligned dcl 57 set ref 125* 140* 155* 158* 160* 160* 164* 164* 172* 172* 184* 184* error_table_$noarg 000050 external static fixed bin(35,0) dcl 82 set ref 118* event_call_info based structure level 1 dcl 1-7 expand_pathname_$add_suffix 000012 constant entry external dcl 25 ref 125 flags 000204 automatic bit(5) unaligned dcl 59 in procedure "dm" set ref 162* 180 182* flags 4 000216 automatic structure level 2 in structure "local_pcao" dcl 64 in procedure "dm" flags 3 based structure array level 2 in structure "msg_array" dcl 3-4 in procedure "dm" get_system_free_area_ 000014 constant entry external dcl 27 ref 168 idx 000205 automatic fixed bin(17,0) dcl 61 set ref 114* 115* 117* 117 118 124* 140* 146* 146* 175* 176 176* local_eci 000206 automatic structure level 1 dcl 63 set ref 215 215 local_pcao 000216 automatic structure level 1 dcl 64 set ref 140 140 logbox_creation_mode 2 000216 automatic fixed bin(17,0) level 2 dcl 64 set ref 134* mbz 4(02) 000216 automatic bit(34) level 3 packed unaligned dcl 64 set ref 138* message 2 000206 automatic fixed bin(71,0) level 2 dcl 63 set ref 209* message_facility_$get_msg_array_ptr 000020 constant entry external dcl 31 ref 170 message_facility_$get_msgf_mbx_ptr 000022 constant entry external dcl 32 ref 158 message_facility_$get_wakeup_state 000024 constant entry external dcl 33 ref 162 message_facility_$set_wakeup_state 000026 constant entry external dcl 34 ref 182 message_facility_$wakeup_processor 000030 constant entry external dcl 35 ref 215 message_id based bit(72) array level 2 dcl 3-4 ref 209 mlsys_utils_$parse_mailbox_control_args 000016 constant entry external dcl 29 ref 140 msg_array based structure array level 1 dcl 3-4 ref 192 msg_array_ptr 000246 automatic pointer dcl 3-11 set ref 99* 170* 176 192 192 209 msgf_mbx_ptr 000224 automatic pointer dcl 66 set ref 158* 162* 170* 182* 213 n_messages 000250 automatic fixed bin(17,0) dcl 3-13 set ref 170* 175 192 new_wakeup_state 000121 automatic bit(2) dcl 54 set ref 88* 93* 166 180 null builtin function dcl 78 ref 99 104 104 192 193 origin 5 000206 automatic structure level 2 dcl 63 parse_ca_options based structure level 1 dcl 2-8 path 000226 automatic bit(1) dcl 68 set ref 95* 121 129* 144 148* 152 pathname_ 000032 constant entry external dcl 37 ref 160 160 164 164 172 172 184 184 person 000227 automatic char(22) unaligned dcl 70 set ref 153* 154 155 printed 3 based bit(1) array level 3 packed unaligned dcl 3-4 ref 176 project 000235 automatic char(9) unaligned dcl 71 set ref 153* 154 ring 5(18) 000206 automatic fixed bin(17,0) level 3 packed unaligned dcl 63 set ref 212* rtrim builtin function dcl 78 ref 154 154 155 savebox_creation_mode 3 000216 automatic fixed bin(17,0) level 2 dcl 64 set ref 135* sci_ptr 000240 automatic pointer dcl 73 set ref 99* 104* 112* 115* 118* 121* 124* 127* 140* 142* 144* 160* 164* 172* 184* 193 193* sender 4 000206 automatic bit(36) level 2 dcl 63 set ref 210* ssu_$abort_line 000034 constant entry external dcl 39 ref 118 121 127 142 144 160 164 172 184 ssu_$arg_count 000036 constant entry external dcl 40 ref 112 ssu_$arg_ptr 000040 constant entry external dcl 41 ref 115 124 ssu_$destroy_invocation 000042 constant entry external dcl 42 ref 193 ssu_$standalone_invocation 000044 constant entry external dcl 43 ref 104 sys_area based area(1024) dcl 76 ref 192 sys_area_ptr 000242 automatic pointer dcl 75 set ref 99* 168* 170* 192 unspec builtin function dcl 78 set ref 209* 209 user_info_$whoami 000046 constant entry external dcl 45 ref 153 validate_addresses 4(01) 000216 automatic bit(1) level 3 packed unaligned dcl 64 set ref 137* version 000216 automatic char(8) level 2 packed unaligned dcl 64 set ref 133* wakeup_flags based structure level 1 packed unaligned dcl 4-4 wakeup_state 0(03) based bit(2) level 2 packed unaligned dcl 4-4 set ref 180* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. CREATE_AND_ANNOUNCE_MAILBOX internal static fixed bin(17,0) initial dcl 2-28 DELETE_UNHELD internal static bit(3) initial unaligned dcl 3-15 DONT_DELETE_MESSAGES internal static bit(3) initial unaligned dcl 3-16 DONT_DELETE_NOTIFICATIONS internal static bit(3) initial unaligned dcl 3-17 QUERY_TO_CREATE_MAILBOX internal static fixed bin(17,0) initial dcl 2-28 SILENTLY_CREATE_MAILBOX internal static fixed bin(17,0) initial dcl 2-28 event_call_info_ptr automatic pointer dcl 1-5 parse_ca_options_ptr automatic pointer dcl 2-23 NAMES DECLARED BY EXPLICIT CONTEXT. COMMON 000175 constant label dcl 95 ref 89 RETURN_FROM_DM 001475 constant label dcl 188 ref 199 abort_dm 001533 constant entry internal dcl 197 ref 104 104 cleanup_dm 001477 constant entry internal dcl 191 ref 101 186 198 defer_messages 000140 constant entry external dcl 19 dm 000131 constant entry external dcl 19 im 000154 constant entry external dcl 91 immediate_messages 000163 constant entry external dcl 91 print_message 001550 constant entry internal dcl 203 ref 176 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 2122 2174 1612 2132 Length 2500 1612 52 267 307 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME dm 276 external procedure is an external procedure. on unit on line 101 64 on unit cleanup_dm 68 internal procedure is called by several nonquick procedures. abort_dm 64 internal procedure is assigned to an entry variable. print_message internal procedure shares stack frame of external procedure dm. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME dm 000100 ME dm 000114 arg_count dm 000116 arg_ptr dm 000120 arg_len dm 000121 new_wakeup_state dm 000122 dname dm 000174 ename dm 000204 flags dm 000205 idx dm 000206 local_eci dm 000216 local_pcao dm 000224 msgf_mbx_ptr dm 000226 path dm 000227 person dm 000235 project dm 000240 sci_ptr dm 000242 sys_area_ptr dm 000244 code dm 000246 msg_array_ptr dm 000250 n_messages dm THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_e_as alloc_cs cat_realloc_cs call_ext_out_desc call_ext_out call_int_this call_int_other return tra_ext enable shorten_stack ext_entry int_entry free_based THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ expand_pathname_$add_suffix get_system_free_area_ message_facility_$get_msg_array_ptr message_facility_$get_msgf_mbx_ptr message_facility_$get_wakeup_state message_facility_$set_wakeup_state message_facility_$wakeup_processor mlsys_utils_$parse_mailbox_control_args pathname_ ssu_$abort_line ssu_$arg_count ssu_$arg_ptr ssu_$destroy_invocation ssu_$standalone_invocation user_info_$whoami THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$noarg LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 19 000130 87 000145 88 000150 89 000152 91 000153 92 000170 93 000173 95 000175 99 000176 101 000202 104 000224 106 000265 107 000267 108 000313 112 000314 114 000325 115 000335 116 000352 117 000364 118 000365 121 000423 124 000463 125 000500 127 000536 129 000572 130 000574 133 000575 134 000577 135 000601 136 000602 137 000604 138 000606 140 000610 142 000646 144 000665 146 000725 148 000727 150 000731 152 000733 153 000735 154 000756 155 001040 156 001055 158 001056 160 001103 162 001154 164 001175 166 001246 168 001251 170 001260 172 001277 175 001351 176 001361 177 001370 180 001372 182 001377 184 001420 186 001471 188 001475 191 001476 192 001504 193 001515 194 001531 197 001532 198 001540 199 001545 203 001550 208 001552 209 001554 210 001562 211 001563 212 001565 213 001567 215 001571 216 001602 ----------------------------------------------------------- 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