COMPILATION LISTING OF SEGMENT mlsys_psp_ Compiled by: Multics PL/I Compiler, Release 28e, of February 14, 1985 Compiled at: Honeywell Multics Op. - System M Compiled on: 06/30/86 1352.6 mst Mon Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1983 * 4* * * 5* *********************************************************** */ 6 7 8 9 /****^ HISTORY COMMENTS: 10* 1) change(86-06-11,Mills), approve(86-06-11,MCR7419), 11* audit(86-06-17,Margolin), install(86-06-30,MR12.0-1080): 12* This adds the entry point mlsys_psp_$domains_available. This returns a 13* "1"b is they are, ""b if not. 14* END HISTORY COMMENTS */ 15 16 17 /* format: off */ 18 19 /* Determines which PSPs/RPQs used by the mail system are available at the site */ 20 21 /* Created: December 1983 by G. Palter */ 22 /* Modified: March 1984 by G. Palter to fix mail system error #0436 -- if a */ 23 /* forum meeting is not found in the "forum" search list, the mail system */ 24 /* will treat it as a version 1 meeting in the working directory */ 25 26 /* format: on,style4,delnl,insnl,ifthenstmt,ifthen */ 27 28 29 mlsys_psp_: 30 procedure () returns (bit (1) aligned); 31 32 return ("0"b); /* not an entrypoint */ 33 34 35 /* Declarations */ 36 37 dcl psp_entry entry () options (variable) variable; 38 39 dcl local_host character (40) varying; 40 dcl forum_gate_brackets (3) fixed binary (3); 41 42 dcl code fixed binary (35); 43 44 dcl MAIL_SYSTEM_ character (32) static options (constant) initial ("mail_system_"); 45 46 dcl nit_data_$local_host character (40) varying external; 47 48 /* format: off */ 49 dcl (forum_error_table_$meeting_bloat, forum_error_table_$no_such_forum, forum_error_table_$not_eligible, 50 forum_error_table_$not_in_search_list, forum_error_table_$read_only, forum_error_table_$rqo) 51 fixed binary (35) external; 52 /* format: on */ 53 54 dcl forum_$close_forum entry (fixed binary, fixed binary (35)); 55 dcl forum_$enter_trans 56 entry (fixed binary, character (*), fixed binary, character (*), bit (1) aligned, fixed binary, 57 fixed binary (35)); 58 dcl forum_$get_forum_path entry (character (*), character (*), character (*), character (*), fixed binary (35)); 59 dcl forum_$open_forum entry (character (*), character (*), fixed binary, fixed binary (35)); 60 dcl forum_$real_forum_limits 61 entry (fixed binary, fixed binary, fixed binary, fixed binary, fixed binary, fixed binary, bit (36) aligned, 62 fixed binary (35)); 63 dcl get_ring_ entry () returns (fixed binary (3)); 64 dcl hcs_$fs_get_brackets entry (pointer, fixed binary (5), (3) fixed binary (3), fixed binary (35)); 65 dcl host_name_$local_compare entry (char (256), char (256), fixed bin (35)) returns (bit (1)); 66 dcl host_name_$qualify_local entry (char (256), fixed bin (35)) returns (char (256)); 67 dcl host_name_$local_valid_destination entry (char (256), fixed bin (35)) returns (bit (1)); 68 dcl mlsys_mailer_ entry (pointer, pointer, fixed binary (21)); 69 dcl sub_err_ entry () options (variable); 70 71 dcl linkage_error condition; 72 73 dcl (codeptr, null) builtin; 74 75 /* Determine if the site has purchased the TCP/IP and/or Hyperchannel RPQs which provide a prototype Network Information 76* Table (NIT) and an interim Inter-System Mailer */ 77 78 ism_not_available: 79 entry () returns (bit (1) aligned); 80 81 if mlsys_data_$ism_not_available = 0 then do; 82 83 /*** First time in this process and ring: actually check for the mailer's existence */ 84 85 mlsys_data_$ism_not_available = -1; /* until proven otherwise ... */ 86 87 on condition (linkage_error) 88 begin; /* ... where otherwise is when this handler is invoked */ 89 mlsys_data_$ism_not_available = 1; 90 go to RETURN_FROM_ISM_NOT_AVAILABLE; 91 end; 92 93 psp_entry = host_table_mgr_$primary_name; /* try to snap the links to all entrypoints we use ... */ 94 psp_entry = mlsys_mailer_; 95 psp_entry = nit_$get_forwarding_host; 96 psp_entry = nit_$get_service_list; 97 98 local_host = nit_data_$local_host; /* ... and the single external constant */ 99 end; 100 101 RETURN_FROM_ISM_NOT_AVAILABLE: 102 return (mlsys_data_$ism_not_available = 1); 103 104 /* Determine if the site has the domain name system software installed. */ 105 106 domains_available: 107 entry () returns (bit (1) aligned); 108 109 if mlsys_data_$domains_available = 0 then do; 110 111 /*** First time in this process and ring: actually check for the domain system's existence */ 112 113 mlsys_data_$domains_available = 1; /* until proven otherwise... */ 114 115 on condition (linkage_error) 116 begin; 117 mlsys_data_$domains_available = -1; 118 go to RETURN_FROM_DOMAINS_AVAILABLE; 119 end; 120 121 psp_entry = host_name_$local_compare; /* try to snap the links to all entrypoints we use ... */ 122 psp_entry = host_name_$qualify_local; 123 psp_entry = host_name_$local_valid_destination; 124 end; 125 126 RETURN_FROM_DOMAINS_AVAILABLE: 127 return (mlsys_data_$domains_available = 1); 128 129 /* Determine if the site has purchased forum and, if available, the lowest ring in which it may be used */ 130 131 forum_not_available: 132 entry () returns (bit (1) aligned); 133 134 if mlsys_data_$forum_not_available = 0 then do; 135 136 /*** First time in this process and ring: actually check for Forum's existence */ 137 138 mlsys_data_$forum_not_available = -1; /* until proven otherwise ... */ 139 140 on condition (linkage_error) 141 begin; /* ... where otherwise is when this handler is invoked */ 142 mlsys_data_$forum_not_available = 1; 143 go to RETURN_FROM_FORUM_NOT_AVAILABLE; 144 end; 145 146 do psp_entry = /* snap the links to all forum entrypoints ... */ 147 forum_$close_forum, forum_$enter_trans, forum_$get_forum_path, forum_$open_forum, 148 forum_$real_forum_limits; 149 end; 150 151 do code = /* ... and all forum error codes */ 152 forum_error_table_$meeting_bloat, forum_error_table_$no_such_forum, forum_error_table_$not_eligible, 153 forum_error_table_$not_in_search_list, forum_error_table_$read_only, forum_error_table_$rqo; 154 end; 155 156 revert condition (linkage_error); /* here iff the site has forum */ 157 158 call hcs_$fs_get_brackets (codeptr (forum_$open_forum), (0), forum_gate_brackets, code); 159 if code ^= 0 then do; 160 RESIGNAL_GET_RING_BRACKETS_FAILURE: 161 call sub_err_ (code, MAIL_SYSTEM_, ACTION_CANT_RESTART, null (), (0), 162 "Unable to determine the ring brackets on the forum_ gate.^/Contact your system programming staff." 163 ); 164 go to RESIGNAL_GET_RING_BRACKETS_FAILURE; 165 end; 166 167 mlsys_data_$lowest_forum_ring = forum_gate_brackets (1); 168 169 if get_ring_ () < mlsys_data_$lowest_forum_ring then mlsys_data_$forum_not_available = 1; 170 /* can't use forum in this ring: act like it's not present */ 171 end; 172 173 RETURN_FROM_FORUM_NOT_AVAILABLE: 174 return (mlsys_data_$forum_not_available = 1); 175 1 1 /* BEGIN INCLUDE FILE ... mlsys_internal_data.incl.pl1 */ 1 2 1 3 1 4 /****^ HISTORY COMMENTS: 1 5* 1) change(86-06-11,Mills), approve(86-06-11,MCR7419), 1 6* audit(86-06-17,Margolin), install(86-06-30,MR12.0-1080): 1 7* Added mlsys_data_$domains_available. 1 8* END HISTORY COMMENTS */ 1 9 1 10 1 11 /* Created: May 1981 by G. Palter */ 1 12 /* Modified: July 1983 by G. Palter to merge with mlsys_data_ */ 1 13 1 14 /* Constants used internally by the Multics mail system */ 1 15 1 16 dcl mlsys_data_$max_opening_retries fixed binary external; /* maximum number of times to reopen a mailbox if it gets 1 17* damaged and salvaged while open */ 1 18 1 19 dcl mlsys_data_$max_lock_wait_retries fixed binary external; 1 20 /* maximum number of times to try to send a message while the 1 21* mailbox is locked (being salvaged?) */ 1 22 1 23 1 24 /* Allocation overhead factors: When allocating those structures with refer extents, insure that the variable portion of 1 25* the structure contains a multiple of the appropriate constant number of slots. These extra slots will be used for 1 26* later additions to the structure; when a new element must be added to a full structure, add this many new slots (rather 1 27* than a single new slot) 1 28* 1 29* The following expression should be used to determine the initial allocation: 1 30* 1 31* n_slots_to_allocate = n_slots_needed + CONSTANT - mod (n_slots_needed, CONSTANT); */ 1 32 1 33 dcl (mlsys_data_$mailbox_allocation, /* mailbox.messages */ 1 34 mlsys_data_$message_body_sections_allocation, /* message.body_sections */ 1 35 mlsys_data_$message_redistributions_list_allocation, /* message_redistributions_list.redistributions */ 1 36 mlsys_data_$message_user_fields_allocation, /* message_user_fields_list.user_fields */ 1 37 mlsys_data_$message_references_list_allocation, /* message_references_list.references */ 1 38 mlsys_data_$address_list_allocation) /* address_list.addresses */ 1 39 fixed binary external; 1 40 1 41 1 42 /* Static data user by the Multics mail system */ 1 43 1 44 dcl (mlsys_data_$forum_not_available, /* 1 => forum isn't available on the system or in this ring */ 1 45 mlsys_data_$ism_not_available, /* 1 => no inter-system mailer on this system */ 1 46 mlsys_data_$domains_available) /* 1 => domain name system software on this sytem */ 1 47 fixed binary (1) external; 1 48 1 49 dcl (mlsys_data_$subsystem_ring, /* ring in which the mail system is secured */ 1 50 mlsys_data_$highest_usable_ring, /* highest ring of execution which may use the mail system */ 1 51 mlsys_data_$lowest_forum_ring) /* lowest ring of execution with access to forum */ 1 52 fixed binary (3) external; 1 53 1 54 dcl mlsys_data_$temp_segment_list_ptr pointer external; /* -> list of all mail system temporary segments */ 1 55 1 56 dcl mlsys_data_$valid_segments (0:4095) bit (1) unaligned external; 1 57 /* indicates which segments have been used by the mail system 1 58* for the allocation of user-visible data in order to 1 59* validate that pointers passed from the user-ring are OK */ 1 60 1 61 dcl mlsys_area area based (mlsys_data_$subsystem_area_ptr);/* area used for all user-visible allocations ... */ 1 62 dcl mlsys_data_$subsystem_area_ptr pointer external; /* ... and the pointer on which it is based */ 1 63 1 64 dcl mlsys_data_$hash_tables_segment_ptr pointer external; /* -> hash tables used by the mail system */ 1 65 1 66 dcl mlsys_data_$transmit_cache_ptr pointer external; /* -> cache of recently used mailboxes for mlsys_transmit_ */ 1 67 1 68 dcl mlsys_data_$user_is_anonymous bit (1) aligned external;/* ON => the user is an anonymous user */ 1 69 1 70 dcl mlsys_data_$person_id character (24) varying external; /* the user's Person_id */ 1 71 dcl mlsys_data_$project_id character (12) varying external;/* the user's Project_id */ 1 72 dcl mlsys_data_$user_id character (32) varying external; /* the user's User_id (Person_id.Project_id) */ 1 73 1 74 /* END INCLUDE FILE ... mlsys_internal_data.incl.pl1 */ 176 177 2 1 /* Begin include file host_table_dcls.incl.pl1 */ 2 2 2 3 dcl host_table_mgr_$address entry (char (*) var, char (*) var) returns (char (40) var); 2 4 dcl host_table_mgr_$host_list entry (char (*) var) returns (ptr); 2 5 dcl host_table_mgr_$name_given_address entry (char (*) var, char (*) var) returns (char (40) var); 2 6 dcl host_table_mgr_$net_list entry (char (*) var) returns (ptr); 2 7 dcl host_table_mgr_$primary_name entry (char (*) var) returns (char (40) var); 2 8 dcl host_table_mgr_$shortest_name entry (char (*) var) returns (char (40) var); 2 9 2 10 dcl nit_$get_forwarding_host entry (varying char (*), varying char (*)) returns (varying char (40)); 2 11 dcl nit_$get_service_list entry (varying char(*), varying char (*)) returns (ptr); 2 12 2 13 dcl net_list_ptr ptr; 2 14 dcl n_nets fixed bin; 2 15 dcl NET_LIST_VERSION_2 char (8) aligned static options (constant) init ("hnetlst1"); 2 16 dcl 1 net_list aligned based (net_list_ptr), 2 17 2 version char (8), 2 18 2 n_nets fixed bin, 2 19 2 net (n_nets refer (net_list.n_nets)), 2 20 3 number fixed bin, 2 21 3 name varying char (40), 2 22 3 address varying char (40); 2 23 2 24 dcl host_list_ptr ptr; 2 25 dcl n_hosts fixed bin; 2 26 dcl HOST_LIST_VERSION_2 char (8) aligned static options (constant) init ("hostlst2"); 2 27 dcl 1 host_list aligned based (host_list_ptr), 2 28 2 version char (8), 2 29 2 n_hosts fixed bin, 2 30 2 host (n_hosts refer (host_list.n_hosts)), 2 31 3 name varying char (40); 2 32 2 33 dcl n_services fixed bin; 2 34 dcl service_list_ptr ptr; 2 35 dcl 1 service_list aligned based (service_list_ptr), 2 36 2 version char (4), 2 37 2 n_services fixed bin, 2 38 2 service (n_services refer (service_list.n_services)), 2 39 3 type char (8), 2 40 3 module varying char (168), 2 41 3 argument varying char (168); 2 42 2 43 /* End include file host_table_dcls.incl.pl1 */ 178 179 3 1 /* BEGIN INCLUDE FILE sub_err_flags.incl.pl1 BIM 11/81 */ 3 2 /* format: style3 */ 3 3 3 4 /* These constants are to be used for the flags argument of sub_err_ */ 3 5 /* They are just "string (condition_info_header.action_flags)" */ 3 6 3 7 declare ( 3 8 ACTION_CAN_RESTART init (""b), 3 9 ACTION_CANT_RESTART init ("1"b), 3 10 ACTION_DEFAULT_RESTART 3 11 init ("01"b), 3 12 ACTION_QUIET_RESTART 3 13 init ("001"b), 3 14 ACTION_SUPPORT_SIGNAL 3 15 init ("0001"b) 3 16 ) bit (36) aligned internal static options (constant); 3 17 3 18 /* End include file */ 180 181 182 end mlsys_psp_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 06/30/86 1341.9 mlsys_psp_.pl1 >spec>install>1080>mlsys_psp_.pl1 176 1 06/30/86 1338.7 mlsys_internal_data.incl.pl1 >spec>install>1080>mlsys_internal_data.incl.pl1 178 2 04/06/83 1016.0 host_table_dcls.incl.pl1 >ldd>include>host_table_dcls.incl.pl1 180 3 04/16/82 0958.1 sub_err_flags.incl.pl1 >ldd>include>sub_err_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. ACTION_CANT_RESTART 000000 constant bit(36) initial dcl 3-7 set ref 160* MAIL_SYSTEM_ 000001 constant char(32) initial unaligned dcl 44 set ref 160* code 000122 automatic fixed bin(35,0) dcl 42 set ref 151* 158* 159 160* codeptr builtin function dcl 73 ref 158 158 forum_$close_forum 000026 constant entry external dcl 54 ref 146 forum_$enter_trans 000030 constant entry external dcl 55 ref 146 forum_$get_forum_path 000032 constant entry external dcl 58 ref 146 forum_$open_forum 000034 constant entry external dcl 59 ref 146 158 158 forum_$real_forum_limits 000036 constant entry external dcl 60 ref 146 forum_error_table_$meeting_bloat 000012 external static fixed bin(35,0) dcl 49 ref 151 forum_error_table_$no_such_forum 000014 external static fixed bin(35,0) dcl 49 ref 151 forum_error_table_$not_eligible 000016 external static fixed bin(35,0) dcl 49 ref 151 forum_error_table_$not_in_search_list 000020 external static fixed bin(35,0) dcl 49 ref 151 forum_error_table_$read_only 000022 external static fixed bin(35,0) dcl 49 ref 151 forum_error_table_$rqo 000024 external static fixed bin(35,0) dcl 49 ref 151 forum_gate_brackets 000117 automatic fixed bin(3,0) array dcl 40 set ref 158* 167 get_ring_ 000040 constant entry external dcl 63 ref 169 hcs_$fs_get_brackets 000042 constant entry external dcl 64 ref 158 host_name_$local_compare 000044 constant entry external dcl 65 ref 121 host_name_$local_valid_destination 000050 constant entry external dcl 67 ref 123 host_name_$qualify_local 000046 constant entry external dcl 66 ref 122 host_table_mgr_$primary_name 000066 constant entry external dcl 2-7 ref 93 linkage_error 000124 stack reference condition dcl 71 ref 87 115 140 156 local_host 000104 automatic varying char(40) dcl 39 set ref 98* mlsys_data_$domains_available 000062 external static fixed bin(1,0) dcl 1-44 set ref 109 113* 117* 126 mlsys_data_$forum_not_available 000056 external static fixed bin(1,0) dcl 1-44 set ref 134 138* 142* 169* 173 mlsys_data_$ism_not_available 000060 external static fixed bin(1,0) dcl 1-44 set ref 81 85* 89* 101 mlsys_data_$lowest_forum_ring 000064 external static fixed bin(3,0) dcl 1-49 set ref 167* 169 mlsys_mailer_ 000052 constant entry external dcl 68 ref 94 nit_$get_forwarding_host 000070 constant entry external dcl 2-10 ref 95 nit_$get_service_list 000072 constant entry external dcl 2-11 ref 96 nit_data_$local_host 000010 external static varying char(40) dcl 46 ref 98 null builtin function dcl 73 ref 160 160 psp_entry 000100 automatic entry variable dcl 37 set ref 93* 94* 95* 96* 121* 122* 123* 146* sub_err_ 000054 constant entry external dcl 69 ref 160 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ACTION_CAN_RESTART internal static bit(36) initial dcl 3-7 ACTION_DEFAULT_RESTART internal static bit(36) initial dcl 3-7 ACTION_QUIET_RESTART internal static bit(36) initial dcl 3-7 ACTION_SUPPORT_SIGNAL internal static bit(36) initial dcl 3-7 HOST_LIST_VERSION_2 internal static char(8) initial dcl 2-26 NET_LIST_VERSION_2 internal static char(8) initial dcl 2-15 host_list based structure level 1 dcl 2-27 host_list_ptr automatic pointer dcl 2-24 host_table_mgr_$address 000000 constant entry external dcl 2-3 host_table_mgr_$host_list 000000 constant entry external dcl 2-4 host_table_mgr_$name_given_address 000000 constant entry external dcl 2-5 host_table_mgr_$net_list 000000 constant entry external dcl 2-6 host_table_mgr_$shortest_name 000000 constant entry external dcl 2-8 mlsys_area based area(1024) dcl 1-61 mlsys_data_$address_list_allocation external static fixed bin(17,0) dcl 1-33 mlsys_data_$hash_tables_segment_ptr external static pointer dcl 1-64 mlsys_data_$highest_usable_ring external static fixed bin(3,0) dcl 1-49 mlsys_data_$mailbox_allocation external static fixed bin(17,0) dcl 1-33 mlsys_data_$max_lock_wait_retries external static fixed bin(17,0) dcl 1-19 mlsys_data_$max_opening_retries external static fixed bin(17,0) dcl 1-16 mlsys_data_$message_body_sections_allocation external static fixed bin(17,0) dcl 1-33 mlsys_data_$message_redistributions_list_allocation external static fixed bin(17,0) dcl 1-33 mlsys_data_$message_references_list_allocation external static fixed bin(17,0) dcl 1-33 mlsys_data_$message_user_fields_allocation external static fixed bin(17,0) dcl 1-33 mlsys_data_$person_id external static varying char(24) dcl 1-70 mlsys_data_$project_id external static varying char(12) dcl 1-71 mlsys_data_$subsystem_area_ptr external static pointer dcl 1-62 mlsys_data_$subsystem_ring external static fixed bin(3,0) dcl 1-49 mlsys_data_$temp_segment_list_ptr external static pointer dcl 1-54 mlsys_data_$transmit_cache_ptr external static pointer dcl 1-66 mlsys_data_$user_id external static varying char(32) dcl 1-72 mlsys_data_$user_is_anonymous external static bit(1) dcl 1-68 mlsys_data_$valid_segments external static bit(1) array unaligned dcl 1-56 n_hosts automatic fixed bin(17,0) dcl 2-25 n_nets automatic fixed bin(17,0) dcl 2-14 n_services automatic fixed bin(17,0) dcl 2-33 net_list based structure level 1 dcl 2-16 net_list_ptr automatic pointer dcl 2-13 service_list based structure level 1 dcl 2-35 service_list_ptr automatic pointer dcl 2-34 NAMES DECLARED BY EXPLICIT CONTEXT. RESIGNAL_GET_RING_BRACKETS_FAILURE 000441 constant label dcl 160 ref 164 RETURN_FROM_DOMAINS_AVAILABLE 000236 constant label dcl 126 set ref 118 RETURN_FROM_FORUM_NOT_AVAILABLE 000524 constant label dcl 173 ref 143 RETURN_FROM_ISM_NOT_AVAILABLE 000157 constant label dcl 101 set ref 90 domains_available 000170 constant entry external dcl 106 forum_not_available 000247 constant entry external dcl 131 ism_not_available 000100 constant entry external dcl 78 mlsys_psp_ 000066 constant entry external dcl 29 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1136 1232 536 1146 Length 1532 536 74 263 400 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME mlsys_psp_ 160 external procedure is an external procedure. on unit on line 87 64 on unit on unit on line 115 64 on unit on unit on line 140 64 on unit STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME mlsys_psp_ 000100 psp_entry mlsys_psp_ 000104 local_host mlsys_psp_ 000117 forum_gate_brackets mlsys_psp_ 000122 code mlsys_psp_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_e_as call_ext_out_desc call_ext_out return tra_ext enable ext_entry int_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. forum_$close_forum forum_$enter_trans forum_$get_forum_path forum_$open_forum forum_$real_forum_limits get_ring_ hcs_$fs_get_brackets host_name_$local_compare host_name_$local_valid_destination host_name_$qualify_local host_table_mgr_$primary_name mlsys_mailer_ nit_$get_forwarding_host nit_$get_service_list sub_err_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. forum_error_table_$meeting_bloat forum_error_table_$no_such_forum forum_error_table_$not_eligible forum_error_table_$not_in_search_list forum_error_table_$read_only forum_error_table_$rqo mlsys_data_$domains_available mlsys_data_$forum_not_available mlsys_data_$ism_not_available mlsys_data_$lowest_forum_ring nit_data_$local_host LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 29 000063 32 000073 78 000076 81 000105 85 000110 87 000112 89 000126 90 000130 93 000133 94 000140 95 000143 96 000146 98 000151 101 000157 106 000166 109 000175 113 000200 115 000202 117 000216 118 000220 121 000223 122 000230 123 000233 126 000236 131 000245 134 000254 138 000257 140 000261 142 000275 143 000277 146 000302 149 000311 151 000352 154 000357 156 000416 158 000417 159 000437 160 000441 164 000504 167 000505 169 000510 173 000524 ----------------------------------------------------------- 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