COMPILATION LISTING OF SEGMENT !BBBJXGgwLPFCCB Compiled by: Multics PL/I Compiler, Release 29, of July 28, 1986 Compiled at: Honeywell Bull, Phoenix AZ, SysM Compiled on: 02/16/88 1421.3 mst Tue Options: table map 1 /* *********************************************************** 2* * * 3* * * 4* * Copyright, (C) Honeywell Information Systems Inc., 1981 * 5* * * 6* * * 7* *********************************************************** */ 8 9 /**** format: ind3,ll80,initcol6,indattr,^inddcls,dclind4,idind16 */ 10 /**** format: struclvlind2,^ifthenstmt,^ifthendo,^ifthen,^indnoniterdo */ 11 /**** format: ^inditerdo,^indnoniterend,^indthenelse,case,^indproc,^indend */ 12 /**** format: ^delnl,^insnl,comcol41,^indcom,^indblkcom,linecom,^indcomtxt */ 13 14 xdw_defaults_: procedure; 15 16 /* automatic */ 17 18 dcl code fixed binary (35); 19 dcl wdir char (168); 20 21 dcl 1 cdsa aligned like cds_args; 22 23 dcl 1 lists aligned, 24 2 xdw, 25 3 name_count fixed binary, 26 3 path_count fixed binary, 27 3 names (1) char (32), 28 3 paths (2) like search_path; 29 30 /* based */ 31 32 dcl 1 search_path based, 33 2 type fixed binary, 34 2 pathname char (168); 35 36 dcl (addr, hbound, null, size, unspec) builtin; 37 38 /* entry */ 39 40 dcl com_err_ entry options (variable); 41 dcl create_data_segment_ entry (pointer, fixed binary (35)); 42 dcl get_wdir_ entry () returns (char (168)); 43 1 1 /* BEGIN INCLUDE FILE . . . sl_info.incl.pl1 */ 1 2 1 3 1 4 1 5 /****^ HISTORY COMMENTS: 1 6* 1) change(87-11-16,Lippard), approve(87-12-21,MCR7822), 1 7* audit(88-02-09,Blair), install(88-02-16,MR12.2-1023): 1 8* Modified to add INITIATED_SEGS type. 1 9* 2) change(87-11-19,Lippard), approve(87-12-21,MCR7822), 1 10* audit(88-02-09,Blair), install(88-02-16,MR12.2-1023): 1 11* Added uid to sl_info structure. 1 12* END HISTORY COMMENTS */ 1 13 1 14 1 15 declare 1 sl_info aligned based (sl_info_p), 1 16 2 version fixed binary, /* Must be 1 */ 1 17 2 num_paths fixed binary, /* Number of search paths */ 1 18 2 change_index_p pointer, /* Pointer to search list's update count */ 1 19 2 change_index fixed binary (71), /* This search list's update count */ 1 20 2 pad1 (6) bit (36), /* Must be zero */ 1 21 2 paths (sl_info_num_paths refer (sl_info.num_paths)), 1 22 3 type fixed binary, /* Type of search path */ 1 23 3 code fixed binary (35), /* Standard status code of search path */ 1 24 3 uid bit (36), /* Unique ID */ 1 25 3 pathname char (168) unaligned; /* Search pathname */ 1 26 1 27 declare sl_info_num_paths fixed binary; 1 28 declare sl_info_p pointer; 1 29 declare sl_info_version_1 fixed binary internal static options (constant) initial (1); 1 30 1 31 /* Keyword Types */ 1 32 1 33 declare ABSOLUTE_PATH fixed binary internal static options (constant) initial (0); 1 34 declare UNEXPANDED_PATH fixed binary internal static options (constant) initial (1); 1 35 declare REFERENCING_DIR fixed binary internal static options (constant) initial (3); 1 36 declare WORKING_DIR fixed binary internal static options (constant) initial (4); 1 37 declare PROCESS_DIR fixed binary internal static options (constant) initial (5); 1 38 declare HOME_DIR fixed binary internal static options (constant) initial (6); 1 39 declare INITIATED_SEGS fixed binary internal static options (constant) initial (7); 1 40 1 41 /* END INCLUDE FILE . . . sl_info.incl.pl1 */ 44 2 1 /* BEGIN INCLUDE FILE cds_args.incl.pl1 */ 2 2 2 3 dcl 1 cds_args based aligned, 2 4 2 sections (2), 2 5 3 p ptr, /* pointer to data for text/static section */ 2 6 3 len fixed bin (18), /* size of text/static section */ 2 7 3 struct_name char (32), /* name of declared structure for this section */ 2 8 2 seg_name char (32), /* name to create segment by */ 2 9 2 num_exclude_names fixed bin, /* number of names in exclude array */ 2 10 2 exclude_array_ptr ptr, /* pointer to array of exclude names */ 2 11 2 switches, /* control switches */ 2 12 3 defs_in_link bit (1) unal, /* says put defs in linkage */ 2 13 3 separate_static bit (1) unal, /* says separate static section is wanted */ 2 14 3 have_text bit (1) unal, /* ON if text section given */ 2 15 3 have_static bit (1) unal, /* ON if static section given */ 2 16 3 pad bit (32) unal; 2 17 2 18 dcl exclude_names (1) char (32) based; /* pointed to be cds_args.exclude_array_ptr */ 2 19 2 20 /* END INCLUDE FILE cds_args.incl.pl1 */ 45 46 47 /* program */ 48 49 lists.xdw.name_count = hbound (lists.xdw.names, 1); 50 lists.xdw.path_count = hbound (lists.xdw.paths, 1); 51 lists.xdw.names (1) = "xdw"; 52 lists.xdw.paths (1).type = REFERENCING_DIR; 53 lists.xdw.paths (1).pathname = "-referencing_dir"; 54 lists.xdw.paths (2).type = WORKING_DIR; 55 lists.xdw.paths (2).pathname = "-working_dir"; 56 57 unspec (cdsa) = ""b; 58 cdsa.sections (1).p = addr (lists); 59 cdsa.sections (1).len = size (lists); 60 cdsa.sections (1).struct_name = "lists"; 61 cdsa.sections (2).p = null; 62 cdsa.sections (2).struct_name = ""; 63 cdsa.seg_name = "xdw_defaults_"; 64 cdsa.exclude_array_ptr = null; 65 cdsa.switches.have_text = "1"b; 66 67 call create_data_segment_ (addr (cdsa), code); 68 if code ^= 0 69 then do; 70 call com_err_ (code, "xdw_defaults_"); 71 return; 72 end; 73 74 wdir = get_wdir_ (); 75 76 call add_search_names (lists.xdw.names (*)); 77 78 return; 79 80 add_search_names: proc (name_array); 81 82 dcl name_array dimension (*) char (32) aligned parameter; 83 84 dcl hbound builtin; 85 dcl lbound builtin; 86 87 dcl error_table_$segnamedup fixed bin (35) ext static; 88 89 dcl hcs_$chname_file entry (char (*), char (*), char (*), char (*), 90 fixed bin (35)); 91 92 dcl i fixed bin; 93 dcl extra_name char (32); 94 95 do i = lbound (name_array, 1) to hbound (name_array, 1); 96 extra_name = rtrim (name_array (i)) || ".search"; 97 call hcs_$chname_file (wdir, "xdw_defaults_", "", extra_name, code); 98 if code ^= 0 99 then if code ^= error_table_$segnamedup 100 then call com_err_ (code, "xdw_defaults_", "Adding name ^a", 101 extra_name); 102 end; 103 104 return; 105 end add_search_names; 106 107 end xdw_defaults_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 02/16/88 1411.9 !BBBJXGgwLPFCCB.pl1 >spec>install>MR12.2-1023>xdw_defaults_.cds 44 1 02/16/88 1407.4 sl_info.incl.pl1 >spec>install>MR12.2-1023>sl_info.incl.pl1 45 2 04/01/76 2209.5 cds_args.incl.pl1 >ldd>include>cds_args.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. REFERENCING_DIR 000000 constant fixed bin(17,0) initial dcl 1-35 ref 52 WORKING_DIR 000414 constant fixed bin(17,0) initial dcl 1-36 ref 54 addr builtin function dcl 36 ref 58 67 67 cds_args based structure level 1 dcl 2-3 cdsa 000154 automatic structure level 1 dcl 21 set ref 57* 67 67 code 000100 automatic fixed bin(35,0) dcl 18 set ref 67* 68 70* 97* 98 98 98* com_err_ 000012 constant entry external dcl 40 ref 70 98 create_data_segment_ 000014 constant entry external dcl 41 ref 67 error_table_$segnamedup 000020 external static fixed bin(35,0) dcl 87 ref 98 exclude_array_ptr 42 000154 automatic pointer level 2 dcl 21 set ref 64* extra_name 000373 automatic char(32) unaligned dcl 93 set ref 96* 97* 98* get_wdir_ 000016 constant entry external dcl 42 ref 74 have_text 44(02) 000154 automatic bit(1) level 3 packed unaligned dcl 21 set ref 65* hbound builtin function dcl 84 in procedure "add_search_names" ref 95 hbound builtin function dcl 36 in procedure "xdw_defaults_" ref 49 50 hcs_$chname_file 000022 constant entry external dcl 89 ref 97 i 000372 automatic fixed bin(17,0) dcl 92 set ref 95* 96* lbound builtin function dcl 85 ref 95 len 2 000154 automatic fixed bin(18,0) array level 3 dcl 21 set ref 59* lists 000221 automatic structure level 1 dcl 23 set ref 58 59 name_array parameter char(32) array dcl 82 ref 80 95 95 96 name_count 000221 automatic fixed bin(17,0) level 3 dcl 23 set ref 49* names 2 000221 automatic char(32) array level 3 dcl 23 set ref 49 51* 76* null builtin function dcl 36 ref 61 64 p 000154 automatic pointer array level 3 dcl 21 set ref 58* 61* path_count 1 000221 automatic fixed bin(17,0) level 3 dcl 23 set ref 50* pathname 13 000221 automatic char(168) array level 4 dcl 23 set ref 53* 55* paths 12 000221 automatic structure array level 3 dcl 23 set ref 50 search_path based structure level 1 unaligned dcl 32 sections 000154 automatic structure array level 2 dcl 21 seg_name 30 000154 automatic char(32) level 2 dcl 21 set ref 63* size builtin function dcl 36 ref 59 struct_name 3 000154 automatic char(32) array level 3 dcl 21 set ref 60* 62* switches 44 000154 automatic structure level 2 dcl 21 type 12 000221 automatic fixed bin(17,0) array level 4 dcl 23 set ref 52* 54* unspec builtin function dcl 36 set ref 57* wdir 000101 automatic char(168) unaligned dcl 19 set ref 74* 97* xdw 000221 automatic structure level 2 dcl 23 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ABSOLUTE_PATH constant fixed bin(17,0) initial dcl 1-33 HOME_DIR constant fixed bin(17,0) initial dcl 1-38 INITIATED_SEGS constant fixed bin(17,0) initial dcl 1-39 PROCESS_DIR constant fixed bin(17,0) initial dcl 1-37 UNEXPANDED_PATH constant fixed bin(17,0) initial dcl 1-34 exclude_names based char(32) array unaligned dcl 2-18 sl_info based structure level 1 dcl 1-15 sl_info_num_paths 000361 automatic fixed bin(17,0) dcl 1-27 sl_info_p 000362 automatic pointer dcl 1-28 sl_info_version_1 constant fixed bin(17,0) initial dcl 1-29 NAMES DECLARED BY EXPLICIT CONTEXT. add_search_names 000211 constant entry internal dcl 80 ref 76 xdw_defaults_ 000063 constant entry external dcl 14 NAME DECLARED BY CONTEXT OR IMPLICATION. rtrim builtin function ref 96 STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 520 544 415 530 Length 2042 415 24 1262 103 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME xdw_defaults_ 326 external procedure is an external procedure. add_search_names internal procedure shares stack frame of external procedure xdw_defaults_. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME xdw_defaults_ 000100 code xdw_defaults_ 000101 wdir xdw_defaults_ 000154 cdsa xdw_defaults_ 000221 lists xdw_defaults_ 000361 sl_info_num_paths xdw_defaults_ 000362 sl_info_p xdw_defaults_ 000372 i add_search_names 000373 extra_name add_search_names THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_char_temp call_ext_out_desc call_ext_out return_mac shorten_stack ext_entry int_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ create_data_segment_ get_wdir_ hcs_$chname_file THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$segnamedup LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 14 000062 49 000070 50 000072 51 000074 52 000077 53 000101 54 000104 55 000106 57 000111 58 000114 59 000116 60 000120 61 000123 62 000125 63 000130 64 000133 65 000134 67 000136 68 000150 70 000152 71 000175 74 000176 76 000205 78 000210 80 000211 95 000215 96 000225 97 000276 98 000336 102 000403 104 000405 Object Segment >spec>install>MR12.2-1023>xdw_defaults_ Created on 02/16/88 1421.4 mst Tue by GJohnson.SysMaint.a using create_data_segment_, Version II of Thursday, November 20, 1986 Object Text Defs Link Symb Static Start 0 0 140 166 176 176 Length 367 140 26 10 155 0 3 Definitions: segname: xdw_defaults_ symb|0 symbol_table text|0 xdw No Links. ----------------------------------------------------------- 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