COMPILATION LISTING OF SEGMENT !BBBJXcMNcfqzdx Compiled by: Multics PL/I Compiler, Release 30, of February 16, 1988 Compiled at: Honeywell Bull, Phoenix AZ, SysM Compiled on: 07/26/88 1014.7 mst Tue Options: table map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1988 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 6* * * 7* * Copyright (c) 1972 by Massachusetts Institute of * 8* * Technology and Honeywell Information Systems, Inc. * 9* * * 10* *********************************************************** */ 11 12 13 14 /* HISTORY COMMENTS: 15* 1) change(88-04-14,Blair), approve(88-04-14,MCR7842), 16* audit(88-06-29,Lippard), install(88-07-26,MR12.2-1069): 17* Increment the version number to reflect the changes for SCP6349, add 18* search path capability to the mail system. 19* END HISTORY COMMENTS */ 20 21 22 /* format: off */ 23 24 /* Constant and static data used by the send_mail subsystem */ 25 26 /* Created: 14 March 1978 by G. Palter */ 27 /* Modified: 20 June 1978 by G. Palter to add info_directory */ 28 /* Converted: 4 July 1978 by W. Olin Sibert to be rdm_data_ instead */ 29 /* Converted: 28 December 1978 by G. Palter back to sdm_data_ */ 30 /* Modified: 15 January 1979 by G. Palter to add no_abort option */ 31 /* Modified: 19 March 1979 by G. Palter to make -no_message_id the default */ 32 /* Modified: 29 December 1979 by W. Olin Sibert to add max_lock_wait_retries */ 33 /* Modified: 25 April 1980 by G. Palter to add -abbrev and -profile options */ 34 /* Modified: 16 February 1982 by G. Palter to add default_profile_ptr option */ 35 /* Modified: 17 September 1982 by G. Palter to add ec_suffix and ec_search_list and to reflect new fill, prompt, and 36* request loop control structure */ 37 /* Recoded: August 1983 by G. Palter to use new argument processing technology for EXL/installed decision, to make the 38* subsystem version a single character string, to support version 6 of the send_mail_options structure, and to add 39* static data (first use/default From field) */ 40 41 /* format: on,style4,delnl,insnl,ifthenstmt,ifthen */ 42 43 44 sdm_data_: 45 procedure () options (variable); 46 47 48 dcl 1 sdm_constants aligned, 49 2 version character (32) varying, 50 2 info_directory character (168) unaligned, 51 2 special_message character (256) varying, 52 2 ec_suffix character (32) unaligned, 53 2 ec_search_list character (32) unaligned, 54 2 default_options like send_mail_options aligned; 55 56 dcl 1 sdm_static aligned, 57 2 first_invocation bit (1) aligned, 58 2 default_from_field pointer; 59 60 dcl 1 cds_data aligned like cds_args; /* arguments to create_data_segment_ subr */ 61 62 dcl argument character (argument_lth) unaligned based (argument_ptr); 63 dcl argument_ptr pointer; 64 dcl argument_lth fixed binary (21); 65 dcl (n_arguments, argument_idx) fixed binary; 66 67 dcl subsystem_type fixed binary; /* unbundled/exl/development */ 68 dcl subsystem_version character (32) varying; 69 dcl subsystem_info_directory character (168); 70 71 dcl special_message character (256) varying; 72 dcl special_message_given bit (1) aligned; 73 74 dcl code fixed binary (35); 75 76 dcl SDM_DATA_ character (32) static options (constant) initial ("sdm_data_"); 77 78 dcl DEFAULT_SUBSYSTEM_VERSION character (28) varying static options (constant) initial ("8.0g"); 79 dcl DEFAULT_SPECIAL_MESSAGE character (256) varying static options (constant) initial (""); 80 81 dcl UNBUNDLED_SUBSYSTEM fixed binary static options (constant) initial (1); 82 dcl UNBUNDLED_INFO_DIRECTORY character (168) static options (constant) initial (">doc>subsystem>mail_system>send_mail"); 83 84 dcl EXL_SUBSYSTEM fixed binary static options (constant) initial (2); 85 dcl EXL_INFO_DIRECTORY character (168) static options (constant) initial (">exl>mail_system_dir>info>send_mail"); 86 87 dcl DEVELOPMENT_SUBSYSTEM fixed binary static options (constant) initial (3); 88 dcl DEVELOPMENT_INFO_DIRECTORY character (168) static options (constant) 89 initial (">udd>Multics>Palter>work>mail_system>info>send_mail"); 90 91 /* format: off */ 92 dcl (error_table_$bad_arg, error_table_$badopt, error_table_$bigarg) 93 fixed binary (35) external; 94 /* format: on */ 95 96 dcl cu_$arg_count entry (fixed binary, fixed binary (35)); 97 dcl cu_$arg_ptr entry (fixed binary, pointer, fixed binary (21), fixed binary (35)); 98 dcl com_err_ entry () options (variable); 99 dcl create_data_segment_ entry (pointer, fixed binary (35)); 100 101 dcl (addr, currentsize, index, maxlength, null, string) builtin; 102 103 /* Determine which type (unbundled/EXL/development) and version of the subsystem is being created */ 104 105 call cu_$arg_count (n_arguments, code); 106 if code ^= 0 then do; /* not a command */ 107 call com_err_ (code, SDM_DATA_); 108 return; 109 end; 110 111 subsystem_type = UNBUNDLED_SUBSYSTEM; 112 subsystem_version = DEFAULT_SUBSYSTEM_VERSION; 113 special_message_given = "0"b; /* default depends on the subsystem version */ 114 115 do argument_idx = 1 to n_arguments; 116 117 call cu_$arg_ptr (argument_idx, argument_ptr, argument_lth, code); 118 if code ^= 0 then do; 119 call com_err_ (code, SDM_DATA_, "Fetching argument #^d.", argument_idx); 120 return; 121 end; 122 123 if index (argument, "-") = 1 then /* a control argument ... */ 124 if (argument = "-unbundled") | (argument = "-unb") then subsystem_type = UNBUNDLED_SUBSYSTEM; 125 else if (argument = "-experimental") | (argument = "-exl") then subsystem_type = EXL_SUBSYSTEM; 126 else if (argument = "-development") | (argument = "-dev") then subsystem_type = DEVELOPMENT_SUBSYSTEM; 127 128 else if argument = "-version" then do; /* specific value for the subsystem version */ 129 if argument_idx = n_arguments then do; 130 call com_err_ (code, SDM_DATA_, "Version string following ""^a"".", argument); 131 return; 132 end; 133 argument_idx = argument_idx + 1; 134 call cu_$arg_ptr (argument_idx, argument_ptr, argument_lth, code); 135 if code ^= 0 then do; 136 call com_err_ (code, SDM_DATA_, "Fetching argument #^d.", argument_idx); 137 return; 138 end; 139 if argument_lth > maxlength (DEFAULT_SUBSYSTEM_VERSION) then do; 140 call com_err_ (error_table_$bigarg, SDM_DATA_, 141 "Maximum length for the version string is ^d characters. ""^a""", 142 maxlength (DEFAULT_SUBSYSTEM_VERSION), argument); 143 return; 144 end; 145 subsystem_version = argument; 146 end; 147 148 else if (argument = "-message") | (argument = "-msg") then do; 149 if argument_idx = n_arguments then do; 150 call com_err_ (code, SDM_DATA_, "Special message text following ""^a"".", argument); 151 return; 152 end; 153 argument_idx = argument_idx + 1; 154 call cu_$arg_ptr (argument_idx, argument_ptr, argument_lth, code); 155 if code ^= 0 then do; 156 call com_err_ (code, SDM_DATA_, "Fetching argument #^d.", argument_idx); 157 return; 158 end; 159 if argument_lth > maxlength (special_message) then do; 160 call com_err_ (error_table_$bigarg, SDM_DATA_, 161 "Maximum length for the special message is ^d characters. ""^a""", 162 maxlength (special_message), argument); 163 return; 164 end; 165 special_message = argument; 166 special_message_given = "1"b; 167 end; 168 else if (argument = "-no_message") | (argument = "-nmsg") then do; 169 special_message = ""; /* developer wants no message for this version */ 170 special_message_given = "1"b; 171 end; 172 173 else do; 174 call com_err_ (error_table_$badopt, SDM_DATA_, """^a""", argument); 175 return; 176 end; 177 178 else do; 179 call com_err_ (error_table_$bad_arg, SDM_DATA_, """^a""", argument); 180 return; 181 end; 182 end; 183 184 185 /* Supply appropriate default values for the special message and subsystem info directory based on the type and version */ 186 187 if ^special_message_given then /* defaults to builtin message only if builtin version */ 188 if subsystem_version = DEFAULT_SUBSYSTEM_VERSION then 189 special_message = DEFAULT_SPECIAL_MESSAGE; 190 else special_message = ""; /* ... any other version must have the message supplied */ 191 192 if subsystem_type = UNBUNDLED_SUBSYSTEM then subsystem_info_directory = UNBUNDLED_INFO_DIRECTORY; 193 194 else if subsystem_type = EXL_SUBSYSTEM then do; 195 subsystem_version = subsystem_version || " EXL"; 196 subsystem_info_directory = EXL_INFO_DIRECTORY; 197 end; 198 199 else /*** if subsystem_type = DEVELOPMENT_SUBSYSTEM then */ 200 do; 201 subsystem_version = subsystem_version || " dev"; 202 subsystem_info_directory = DEVELOPMENT_INFO_DIRECTORY; 203 end; 204 205 206 /* Define values for the constant data used by the subsystem */ 207 208 sdm_constants.version = subsystem_version; 209 sdm_constants.info_directory = subsystem_info_directory; 210 sdm_constants.special_message = special_message; 211 212 sdm_constants.ec_suffix = "sdmec"; /* use non-default exec_com suffix and search list */ 213 sdm_constants.ec_search_list = "mail_system"; 214 215 sdm_constants.default_options.version = SEND_MAIL_OPTIONS_VERSION_6; 216 217 sdm_constants.fill_width = 72; 218 219 sdm_constants.prompt_string = ""; 220 string (sdm_constants.prompt_control.flags) = ""b; 221 sdm_constants.prompt_control.prompt_control = DEFAULT_PROMPT; 222 223 sdm_constants.default_profile_ptr = null (); /* default to use same profile as command level (if any) */ 224 sdm_constants.profile_ptr = null (); 225 226 sdm_constants.original_text_indentation = 4; 227 string (sdm_constants.original_text_control.flags) = ""b; 228 sdm_constants.indent_original_text = "1"b; /* indent the original text by default if it's included */ 229 230 string (sdm_constants.default_options.flags) = ""b; 231 sdm_constants.notify = "1"b; 232 sdm_constants.debug = (subsystem_type = DEVELOPMENT_SUBSYSTEM); 233 sdm_constants.fill_control = DEFAULT_FILL; 234 sdm_constants.request_loop_control = DEFAULT_REQUEST_LOOP; 235 /* above code leaves acknowledge, brief, abbrev, and 236* auto_write off */ 237 238 239 /* Define initial values for the static data used by the subsystem */ 240 241 sdm_static.first_invocation = "1"b; /* force the initialization code to be run */ 242 243 sdm_static.default_from_field = null (); /* value to be displayed as From field when it's empty */ 244 245 246 /* Set up arguments for call to create_data_segment_ */ 247 248 cds_data.sections (1).p = addr (sdm_constants); 249 cds_data.sections (1).len = currentsize (sdm_constants); 250 cds_data.sections (1).struct_name = "sdm_constants"; 251 252 cds_data.sections (2).p = addr (sdm_static); 253 cds_data.sections (2).len = currentsize (sdm_static); 254 cds_data.sections (2).struct_name = "sdm_static"; 255 256 cds_data.seg_name = SDM_DATA_; 257 258 cds_data.num_exclude_names = 0; 259 cds_data.exclude_array_ptr = null (); 260 261 string (cds_data.switches) = ""b; 262 cds_data.switches.have_text, cds_data.switches.have_static = "1"b; 263 cds_data.switches.separate_static = "1"b; 264 265 266 /* Call create_data_segment_ */ 267 268 call create_data_segment_ (addr (cds_data), code); 269 270 if code ^= 0 then call com_err_ (code, SDM_DATA_); 271 272 return; 273 1 1 /* BEGIN INCLUDE FILE ... send_mail_options.incl.pl1 */ 1 2 /* Created: 28 December 1978 by G. Palter */ 1 3 /* Modified: 25 April 1980 by G. Palter for version 2 -- abbrev processing */ 1 4 /* Modified: 27 January 1981 by G. Palter for version 3 -- increased prompt string length */ 1 5 /* Modified: 16 February 1982 by G. Palter for version 4 -- default profile in addition to current profile */ 1 6 /* Modified: 17 September 1982 by G. Palter for version 5 -- new definition of -fill, -debug, and making -fill/-rql 1 7* dependent on mode of message input (terminal/file) */ 1 8 /* Modified: August 1983 by G. Palter for version 6 -- elimination of -header and -message_id (always ON), elimination of 1 9* -no_abort as the command line -abort/-no_abort no longer sets the default for the send request control argument, 1 10* addition of -auto_write/-no_auto_write as required by the MCR boards, and addition of options pertaining to 1 11* treatment of the original message(s) text when invoked by a reply request */ 1 12 1 13 /* User settable options of the send_mail subsystem */ 1 14 1 15 dcl 1 send_mail_options aligned based (send_mail_options_ptr), 1 16 2 version character (8) unaligned, 1 17 1 18 2 fill_width fixed binary, /* default width for filling */ 1 19 1 20 2 prompt_control aligned, /* controls how send_mail prompts */ 1 21 3 prompt_string character (64) varying, /* ... user-supplied string */ 1 22 3 flags aligned, 1 23 4 prompt_control bit (2) unaligned, /* ... default prompt/use above string/don't prompt */ 1 24 4 pad bit (34) unaligned, 1 25 1 26 2 default_profile_ptr pointer, /* -> default profile to be used if flags.abbrev is ON */ 1 27 2 profile_ptr pointer, /* -> profile to be used if flags.abbrev is ON */ 1 28 1 29 2 original_text_control aligned, /* controls send_mail's treatment of original message text */ 1 30 3 original_text_indentation fixed binary, /* ... # of columns to indent the text if requested */ 1 31 3 flags, 1 32 4 include_original_text bit (1) unaligned, /* ... ON => text from message(s) being answered is to be 1 33* included in the reply before the actual answer */ 1 34 4 indent_original_text bit (1) unaligned, /* ... ON => the original text is to be indented */ 1 35 4 fill_original_text bit (1) unaligned, /* ... ON => the original text is to be re-filled */ 1 36 4 pad bit (33) unaligned, 1 37 1 38 2 flags aligned, 1 39 3 acknowledge bit (1) unaligned, /* ON => user wants acknowledgement from recipients */ 1 40 3 brief bit (1) unaligned, /* ON => suppress "Mail delivered..." messages */ 1 41 3 notify bit (1) unaligned, /* ON => send each recipient a wakeup */ 1 42 3 abbrev bit (1) unaligned, /* ON => use abbrev processing in this invocation */ 1 43 3 debug bit (1) unaligned, /* ON => enable debugging features */ 1 44 3 auto_write bit (1) unaligned, /* ON => qedx request automatically rewrites on quit (sigh) */ 1 45 3 fill_control bit (2) unaligned, /* default/explicit -fill/explicit -no_fill */ 1 46 3 request_loop_control bit (2) unaligned, /* default/explicit -rql/explicit -nrql */ 1 47 3 pad bit (26) unaligned; 1 48 1 49 dcl send_mail_options_ptr pointer; 1 50 1 51 dcl SEND_MAIL_OPTIONS_VERSION_6 character (8) static options (constant) initial ("sdmopt06"); 1 52 1 53 1 54 /* Prompt control options */ 1 55 1 56 dcl (DEFAULT_PROMPT initial ("00"b), /* use default subsystem prompt */ 1 57 USE_PROMPT_STRING initial ("01"b), /* use prompt string supplied by user (via -prompt STR) */ 1 58 NO_PROMPT initial ("10"b)) /* disable subsystem prompt */ 1 59 bit (2) static options (constant); 1 60 1 61 1 62 /* Fill control options */ 1 63 1 64 dcl (DEFAULT_FILL initial ("00"b), /* fill if terminal input; do not fill if file input */ 1 65 FILL initial ("01"b), /* user specified -fill */ 1 66 NO_FILL initial ("10"b)) /* user specified -no_fill */ 1 67 bit (2) static options (constant); 1 68 1 69 1 70 /* Request loop control options */ 1 71 1 72 dcl (DEFAULT_REQUEST_LOOP initial ("00"b), /* enter loop if file input; do not enter if terminal input */ 1 73 REQUEST_LOOP initial ("01"b), /* user specified -request_loop */ 1 74 NO_REQUEST_LOOP initial ("10"b)) /* user specified -no_request_loop */ 1 75 bit (2) static options (constant); 1 76 1 77 /* END INCLUDE FILE ... send_mail_options.incl.pl1 */ 274 275 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 */ 276 277 278 end sdm_data_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 07/26/88 1013.4 !BBBJXcMNcfqzdx.pl1 >spec>install>1069>sdm_data_.cds 274 1 10/27/83 2104.2 send_mail_options.incl.pl1 >ldd>include>send_mail_options.incl.pl1 276 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. DEFAULT_FILL 000204 constant bit(2) initial packed unaligned dcl 1-64 ref 233 DEFAULT_PROMPT 000204 constant bit(2) initial packed unaligned dcl 1-56 ref 221 DEFAULT_REQUEST_LOOP 000204 constant bit(2) initial packed unaligned dcl 1-72 ref 234 DEFAULT_SPECIAL_MESSAGE 000204 constant varying char(256) initial dcl 79 ref 187 DEFAULT_SUBSYSTEM_VERSION 000305 constant varying char(28) initial dcl 78 ref 112 139 140 140 187 DEVELOPMENT_INFO_DIRECTORY 000004 constant char(168) initial packed unaligned dcl 88 ref 202 DEVELOPMENT_SUBSYSTEM 000056 constant fixed bin(17,0) initial dcl 87 ref 126 232 EXL_INFO_DIRECTORY 000057 constant char(168) initial packed unaligned dcl 85 ref 196 EXL_SUBSYSTEM 000131 constant fixed bin(17,0) initial dcl 84 ref 125 194 SDM_DATA_ 000315 constant char(32) initial packed unaligned dcl 76 set ref 107* 119* 130* 136* 140* 150* 156* 160* 174* 179* 256 270* SEND_MAIL_OPTIONS_VERSION_6 000002 constant char(8) initial packed unaligned dcl 1-51 ref 215 UNBUNDLED_INFO_DIRECTORY 000132 constant char(168) initial packed unaligned dcl 82 ref 192 UNBUNDLED_SUBSYSTEM 001655 constant fixed bin(17,0) initial dcl 81 ref 111 123 192 USE_PROMPT_STRING 000000 constant bit(2) initial packed unaligned dcl 1-56 addr builtin function dcl 101 ref 248 252 268 268 argument based char packed unaligned dcl 62 set ref 123 123 123 125 125 126 126 128 130* 140* 145 148 148 150* 160* 165 168 168 174* 179* argument_idx 000420 automatic fixed bin(17,0) dcl 65 set ref 115* 117* 119* 129 133* 133 134* 136* 149 153* 153 154* 156* argument_lth 000416 automatic fixed bin(21,0) dcl 64 set ref 62 117* 123 123 123 125 125 126 126 128 130 130 134* 139 140 140 145 148 148 150 150 154* 159 160 160 165 168 168 174 174 179 179 argument_ptr 000414 automatic pointer dcl 63 set ref 62 117* 123 123 123 125 125 126 126 128 130 134* 140 145 148 148 150 154* 160 165 168 168 174 179 cds_args based structure level 1 dcl 2-3 cds_data 000346 automatic structure level 1 dcl 60 set ref 268 268 code 000607 automatic fixed bin(35,0) dcl 74 set ref 105* 106 107* 117* 118 119* 130* 134* 135 136* 150* 154* 155 156* 268* 270 270* com_err_ 000024 constant entry external dcl 98 ref 107 119 130 136 140 150 156 160 174 179 270 create_data_segment_ 000026 constant entry external dcl 99 ref 268 cu_$arg_count 000020 constant entry external dcl 96 ref 105 cu_$arg_ptr 000022 constant entry external dcl 97 ref 117 134 154 currentsize builtin function dcl 101 ref 249 253 debug 240(04) 000100 automatic bit(1) level 4 packed packed unaligned dcl 48 set ref 232* default_from_field 2 000342 automatic pointer level 2 dcl 56 set ref 243* default_options 204 000100 automatic structure level 2 dcl 48 default_profile_ptr 232 000100 automatic pointer level 3 dcl 48 set ref 223* ec_search_list 174 000100 automatic char(32) level 2 packed packed unaligned dcl 48 set ref 213* ec_suffix 164 000100 automatic char(32) level 2 packed packed unaligned dcl 48 set ref 212* error_table_$bad_arg 000012 external static fixed bin(35,0) dcl 92 set ref 179* error_table_$badopt 000014 external static fixed bin(35,0) dcl 92 set ref 174* error_table_$bigarg 000016 external static fixed bin(35,0) dcl 92 set ref 140* 160* exclude_array_ptr 42 000346 automatic pointer level 2 dcl 60 set ref 259* fill_control 240(06) 000100 automatic bit(2) level 4 packed packed unaligned dcl 48 set ref 233* fill_width 206 000100 automatic fixed bin(17,0) level 3 dcl 48 set ref 217* first_invocation 000342 automatic bit(1) level 2 dcl 56 set ref 241* flags 230 000100 automatic structure level 4 in structure "sdm_constants" dcl 48 in procedure "sdm_data_" set ref 220* flags 240 000100 automatic structure level 3 in structure "sdm_constants" dcl 48 in procedure "sdm_data_" set ref 230* flags 237 000100 automatic structure level 4 in structure "sdm_constants" dcl 48 in procedure "sdm_data_" set ref 227* have_static 44(03) 000346 automatic bit(1) level 3 packed packed unaligned dcl 60 set ref 262* have_text 44(02) 000346 automatic bit(1) level 3 packed packed unaligned dcl 60 set ref 262* indent_original_text 237(01) 000100 automatic bit(1) level 5 packed packed unaligned dcl 48 set ref 228* index builtin function dcl 101 ref 123 info_directory 11 000100 automatic char(168) level 2 packed packed unaligned dcl 48 set ref 209* len 2 000346 automatic fixed bin(18,0) array level 3 dcl 60 set ref 249* 253* maxlength builtin function dcl 101 ref 139 140 140 159 160 160 n_arguments 000417 automatic fixed bin(17,0) dcl 65 set ref 105* 115 129 149 notify 240(02) 000100 automatic bit(1) level 4 packed packed unaligned dcl 48 set ref 231* null builtin function dcl 101 ref 223 224 243 259 num_exclude_names 40 000346 automatic fixed bin(17,0) level 2 dcl 60 set ref 258* original_text_control 236 000100 automatic structure level 3 dcl 48 original_text_indentation 236 000100 automatic fixed bin(17,0) level 4 dcl 48 set ref 226* p 000346 automatic pointer array level 3 dcl 60 set ref 248* 252* profile_ptr 234 000100 automatic pointer level 3 dcl 48 set ref 224* prompt_control 230 000100 automatic bit(2) level 5 in structure "sdm_constants" packed packed unaligned dcl 48 in procedure "sdm_data_" set ref 221* prompt_control 207 000100 automatic structure level 3 in structure "sdm_constants" dcl 48 in procedure "sdm_data_" prompt_string 207 000100 automatic varying char(64) level 4 dcl 48 set ref 219* request_loop_control 240(08) 000100 automatic bit(2) level 4 packed packed unaligned dcl 48 set ref 234* sdm_constants 000100 automatic structure level 1 dcl 48 set ref 248 249 sdm_static 000342 automatic structure level 1 dcl 56 set ref 252 253 sections 000346 automatic structure array level 2 dcl 60 seg_name 30 000346 automatic char(32) level 2 dcl 60 set ref 256* send_mail_options based structure level 1 dcl 1-15 send_mail_options_ptr 000610 automatic pointer dcl 1-49 ref 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 1-15 separate_static 44(01) 000346 automatic bit(1) level 3 packed packed unaligned dcl 60 set ref 263* special_message 000505 automatic varying char(256) dcl 71 in procedure "sdm_data_" set ref 159 160 160 165* 169* 187* 190* 210 special_message 63 000100 automatic varying char(256) level 2 in structure "sdm_constants" dcl 48 in procedure "sdm_data_" set ref 210* special_message_given 000606 automatic bit(1) dcl 72 set ref 113* 166* 170* 187 string builtin function dcl 101 set ref 220* 227* 230* 261* struct_name 3 000346 automatic char(32) array level 3 dcl 60 set ref 250* 254* subsystem_info_directory 000433 automatic char(168) packed unaligned dcl 69 set ref 192* 196* 202* 209 subsystem_type 000421 automatic fixed bin(17,0) dcl 67 set ref 111* 123* 125* 126* 192 194 232 subsystem_version 000422 automatic varying char(32) dcl 68 set ref 112* 145* 187 195* 195 201* 201 208 switches 44 000346 automatic structure level 2 dcl 60 set ref 261* version 000100 automatic varying char(32) level 2 in structure "sdm_constants" dcl 48 in procedure "sdm_data_" set ref 208* version 204 000100 automatic char(8) level 3 in structure "sdm_constants" packed packed unaligned dcl 48 in procedure "sdm_data_" set ref 215* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. FILL constant bit(2) initial packed unaligned dcl 1-64 NO_FILL constant bit(2) initial packed unaligned dcl 1-64 NO_PROMPT constant bit(2) initial packed unaligned dcl 1-56 NO_REQUEST_LOOP constant bit(2) initial packed unaligned dcl 1-72 REQUEST_LOOP constant bit(2) initial packed unaligned dcl 1-72 exclude_names based char(32) array packed unaligned dcl 2-18 NAME DECLARED BY EXPLICIT CONTEXT. sdm_data_ 000477 constant entry external dcl 44 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1770 2020 1656 2000 Length 4752 1656 30 2716 111 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME sdm_data_ 456 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME sdm_data_ 000100 sdm_constants sdm_data_ 000342 sdm_static sdm_data_ 000346 cds_data sdm_data_ 000414 argument_ptr sdm_data_ 000416 argument_lth sdm_data_ 000417 n_arguments sdm_data_ 000420 argument_idx sdm_data_ 000421 subsystem_type sdm_data_ 000422 subsystem_version sdm_data_ 000433 subsystem_info_directory sdm_data_ 000505 special_message sdm_data_ 000606 special_message_given sdm_data_ 000607 code sdm_data_ 000610 send_mail_options_ptr sdm_data_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_e_as call_ext_out_desc call_ext_out return_mac ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ create_data_segment_ cu_$arg_count cu_$arg_ptr THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$bad_arg error_table_$badopt error_table_$bigarg LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 44 000476 105 000504 106 000514 107 000516 108 000533 111 000534 112 000536 113 000543 115 000544 117 000553 118 000570 119 000572 120 000622 123 000623 125 000656 126 000674 128 000712 129 000716 130 000721 131 000754 133 000755 134 000756 135 000773 136 000775 137 001025 139 001026 140 001031 143 001071 145 001072 146 001102 148 001103 149 001116 150 001121 151 001154 153 001155 154 001156 155 001173 156 001175 157 001225 159 001226 160 001231 163 001271 165 001272 166 001302 167 001304 168 001305 169 001320 170 001321 171 001323 174 001324 175 001355 176 001356 179 001357 180 001411 182 001412 187 001414 190 001432 192 001433 194 001442 195 001444 196 001456 197 001461 201 001462 202 001474 208 001477 209 001504 210 001507 212 001514 213 001517 215 001522 217 001524 219 001526 220 001527 221 001530 223 001532 224 001534 226 001535 227 001537 228 001540 230 001542 231 001543 232 001545 233 001554 234 001556 241 001560 243 001562 248 001564 249 001566 250 001570 252 001573 253 001575 254 001577 256 001602 258 001605 259 001606 261 001610 262 001611 263 001615 268 001617 270 001632 272 001651 Object Segment >spec>install>1069>sdm_data_ Created on 07/26/88 1014.8 mst Tue by Hirneisen.SysMaint.a using create_data_segment_, Version II of Thursday, November 20, 1986 with separate static Object Text Defs Link Symb Static Start 0 0 242 356 366 352 Length 566 242 110 10 164 4 10 Definitions: segname: sdm_data_ stat|2 default_from_field text|204 default_options text|174 ec_search_list text|164 ec_suffix stat|0 first_invocation text|11 info_directory text|63 special_message symb|0 symbol_table text|0 version 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