COMPILATION LISTING OF SEGMENT mc_tty_ Compiled by: Multics PL/I Compiler, Release 30, of February 16, 1988 Compiled at: Honeywell Bull, Phoenix AZ, SysM Compiled on: 07/20/88 1034.7 mst Wed Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1987 * 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 /* format: style2 */ 15 mc_tty_: 16 proc (Event_call_info_ptr); 17 18 /* MC_TTY_ - This program is invoked by ipc_ event call when the hardcore 19* sends a device wakeup for a typewriter channel. Alarm timers may also 20* go off for a channel. 21* 22* The hardcore wakeup may mean that a channel which was writing and 23* encountered lack of output buffer space may now proceed again; or it 24* may indicate a read completion; or a hangup. 25* 26* When a read completion arrives, this program attempts to copy the data 27* read from the hardcore. If the operator inputs just an empty line, we 28* inhibit output on the channel for 3 minutes and wait to read his command. 29* 30* Once we have read a command line, we parse it, and execute it. 31* 32* Dennis Capps & Tom Van Vleck */ 33 34 /* revised for MCS by Grady 4/28/75 35* modified by Robert Coren in August 1976 to use CDT entry 36* modified by Robert Coren in June 1977 to use ttt_info_ for terminal-type stuff 37* Modified June 1981 by T. Casey for MR9.0 to add metering. 38* Modified October 1982 by E. N. Kittlitz to not squawk during shutdown. 39* Modified 1984-10-29 BIM for iox_. 40* Modified 1984-12-11, BIM: put OPER: back in. 41* Modified 1985-01-21, BIM: mc_con_rec_$check when a terminal is dialed up. 42* Modified 1985-04-01, E. Swenson: to cause sign_out on hangup. 43* Modified 1985-05-14, E. Swenson to remove mc terminals from service 44* upon hangup if terminal was dialed to the Initializer. 45**/ 46 47 /****^ HISTORY COMMENTS: 48* 1) change(86-03-25,MSharpe), approve(87-07-09,MCR7690), 49* audit(87-07-30,Parisek), install(87-08-04,MR12.1-1055): 50* Modified to work with (DSA) network channels; to drop channel if 51* it can't connect it; to always trace (temporary). 52* 2) change(86-06-19,Kissel), approve(86-07-30,MCR7475), audit(86-08-04,Coren), 53* install(86-10-09,MR12.0-1181): 54* Changed to support the new tty event message format declared in 55* net_event_message.incl.pl1 which replaces tty_event_message.incl.pl1. 56* 3) change(86-06-26,Cox), approve(87-07-09,MCR7690), audit(87-07-30,Parisek), 57* install(87-08-04,MR12.1-1055): 58* Modified to not read answerback for network channels. Removed trace 59* calls to sys_log_. 60* 4) change(86-12-08,Brunelle), approve(87-07-09,MCR7690), 61* audit(87-07-30,Parisek), install(87-08-04,MR12.1-1055): 62* Modified to work with (DSA) network channels; to drop channel if 63* it can't connect it !!;to always trace (temporary). (Changes actually 64* made by MSharpe on 86-03-25) 65* 5) change(87-02-05,GDixon), approve(87-07-09,MCR7690), 66* audit(87-07-30,Parisek), install(87-08-04,MR12.1-1055): 67* Modified for change to mc_anstbl.incl.pl1. 68* 6) change(87-05-11,Parisek), approve(87-07-09,MCR7690), 69* audit(87-07-31,Beattie), install(87-08-04,MR12.1-1055): 70* Check cdte.current_terminal_type before filling the set_term_type_info 71* structure for the set_term_type order call. 72* 7) change(87-06-08,Parisek), approve(87-07-09,MCR7690), 73* audit(87-07-31,Beattie), install(87-08-04,MR12.1-1055): 74* Removed instances of sys_log_ calling when mc_ate.cdtep = null. 75* END HISTORY COMMENTS */ 76 77 /* Parameters */ 78 79 declare Event_call_info_ptr pointer parameter; 80 81 82 /* Automatic */ 83 84 declare code fixed bin (35); 85 declare errmsg char (200); 86 declare input_buffer char (1000); 87 declare line_status_space bit (72) aligned; 88 declare length_read_in fixed bin (21); 89 declare ls_wakeup bit (1); 90 dcl message char (8); 91 dcl old_operator_name char (32); 92 declare p1 pointer; 93 declare perm_mc_service bit (1); 94 declare read_answerback bit (1); 95 declare 1 STTI aligned like set_term_type_info; 96 declare 1 TI aligned like terminal_info; 97 declare tty_state fixed bin; 98 declare type_to_set char (32); 99 declare wakeup_event fixed bin; 100 101 /* Based */ 102 103 dcl fixed_bin_71 fixed bin (71) based; 104 /* overlay for message */ 105 dcl signal_type char (8) based; /* char overlay for ipc_ message */ 106 107 /* Entries */ 108 109 dcl astty_$tty_event entry (ptr, fixed bin (35)); 110 dcl lg_ctl_$logout_channel entry (ptr, char (*)); 111 dcl mc_commands_$remove_tty 112 entry (char (*), bit (1) aligned, fixed bin (35)); 113 dcl mc_con_rec_$check entry; 114 dcl ( 115 hphcs_$syserr, 116 hphcs_$syserr_error_code 117 ) entry options (variable); 118 dcl hcs_$wakeup entry (bit (*) aligned, fixed bin (71), fixed bin (71), fixed bin (35)); 119 declare ioa_$rs entry options (variable); 120 declare ipc_$drain_chn entry (fixed bin (71), fixed bin (35)); 121 declare lg_ctl_$logout_operator 122 entry (ptr, char (*), char (*)); 123 declare mc_commands_$sign_out entry (ptr, char (*), fixed bin (35)); 124 declare mc_commands_$create_iocb 125 entry (ptr, fixed bin (35)); 126 declare timed_io_$get_chars entry (pointer, fixed binary (71), pointer, fixed binary (21), fixed binary (21), 127 fixed binary (35)); 128 declare timed_io_$get_line entry (pointer, fixed binary (71), pointer, fixed binary (21), fixed binary (21), 129 fixed binary (35)); 130 declare timed_io_$put_chars entry (pointer, fixed binary (71), pointer, fixed binary (21), fixed binary (21), 131 fixed binary (35)); 132 declare ttt_info_$default_term_type 133 entry (fixed binary, fixed binary, character (*), fixed binary (35)); 134 dcl ttt_info_$decode_answerback 135 entry (char (*), fixed bin, char (*), char (*), fixed bin (35)); 136 dcl multiplexer_mgr_$state_mpx 137 entry (char (*), fixed bin, fixed bin (35)); 138 declare sc_process_command_line_ 139 entry (pointer, pointer, fixed binary (21)); 140 declare ssu_$abort_line entry () options (variable); 141 declare ssu_$get_info_ptr entry (pointer) returns (pointer); 142 143 dcl ( 144 as_$meter_enter, 145 as_$meter_exit 146 ) entry (fixed bin); 147 dcl sys_log_ entry options (variable); 148 dcl sys_log_$error_log entry options (variable); 149 dcl timer_manager_$alarm_wakeup 150 entry (fixed binary (71), bit (2), fixed binary (71)); 151 dcl timer_manager_$reset_alarm_wakeup 152 entry (fixed binary (71)); 153 154 /* External */ 155 156 dcl error_table_$bad_arg fixed bin (35) ext static; 157 dcl error_table_$line_status_pending 158 fixed bin (35) ext static; 159 dcl error_table_$timeout fixed bin (35) ext static; 160 dcl error_table_$io_no_permission 161 fixed bin (35) ext static; 162 dcl error_table_$undefined_order_request 163 fixed bin (35) ext static; 164 165 /* Builtins */ 166 167 dcl (null, addr, baseno, index, length, 168 reverse, rtrim, substr, unspec, verify) 169 builtin; 170 171 /* Constant */ 172 173 dcl ME char (32) initial ("mc_tty_") internal static options (constant); 174 declare WHITESPACE char (7) init ("  175 ") /* SP TAB BS VT NL CR FF */ int static options (constant); 176 177 dcl ( 178 UNSPECIFIED_EVENT initial (0), 179 DIALUP_EVENT initial (1), 180 HANGUP_EVENT initial (2), 181 QUIT_EVENT initial (3), 182 INPUT_AVAILABLE_EVENT initial (4), 183 OUTPUT_SPACE_AVAILABLE_EVENT 184 initial (5), 185 LINE_STATUS_EVENT initial (6), 186 MASKED_EVENT initial (7) 187 ) fixed bin internal static options (constant); 188 189 dcl EVENT_TO_PNAME (-1:7) char (22) internal static options (constant) init ("invalid", 190 /* -1 */ 191 "unspecified", /* 0 */ 192 "dialup", /* 1 */ 193 "hangup", /* 2 */ 194 "quit", /* 3 */ 195 "input available", /* 4 */ 196 "output space available", 197 /* 5 */ 198 "line status", /* 6 */ 199 "masked"); /* 7 */ 200 201 202 /* Program */ 203 204 call as_$meter_enter (MSGCORD_METER); /* meter cpu time and paging used by this procedure */ 205 mc_ansp = sc_stat_$mc_ansp; 206 207 if Event_call_info_ptr = null 208 then call errx ("called with null ptr"); 209 210 event_call_info_ptr = Event_call_info_ptr; 211 mc_atep = event_call_info.data_ptr; /* Pointer to mcanstbl entry */ 212 cdtep = mc_ate.cdtep; /* Pointer to CDT entry */ 213 214 p1 = addr (event_call_info.message); /* What kind of signal */ 215 if sc_stat_$mc_ansp = null 216 then call errx ("sc_stat_$mc_ansp is null"); 217 if baseno (mc_atep) ^= baseno (sc_stat_$mc_ansp) 218 then call errx ("called with bad pointer"); 219 220 wakeup_event = -1; /* not set yet */ 221 errmsg = ""; /* init */ 222 223 if event_call_info.sender = mc_anstbl.mc_procid 224 then do; 225 if p1 -> signal_type = "alarm___" 226 then do; /* Timeout? */ 227 if mc_ate.iocb = null () 228 then do; 229 call hphcs_$syserr (ANNOUNCE, 230 "^a: Channel ^a ^[(vchannel ^a)^;^s^] received TIMEOUT while awaiting DIALUP wakeup.", 231 ME, mc_ate.real_tty_name, mc_ate.flags.virtual, mc_ate.virtual_tty_name); 232 goto ttydone; 233 end; 234 235 mc_ate.control.inhibit = "0"b;/* Operator didn't type his command in time. */ 236 mc_ate.tra_vec = MC_WAIT_READY; 237 /* Set state back to "not waiting" */ 238 call iox_$control (mc_ate.iocb, "start", null (), (0)); 239 /* In case of lost wakeup, honk on ring 0 */ 240 241 go to READ_COMMAND; 242 end; 243 end; 244 245 else if event_call_info.origin.ring > mc_anstbl.dsa_ring_number 246 then /* Else didn't signal ourself */ 247 if event_call_info.sender = mc_ate.ls_procid 248 then do; /* wakeup from login server, not hardcore */ 249 ls_wakeup = "1"b; 250 dial_event_message_ptr = addr (event_call_info.message); 251 if dial_event_message.control = JUST_DIALED 252 then wakeup_event = DIALUP_EVENT; /* deal with incompatible message formats */ 253 else wakeup_event = HANGUP_EVENT; 254 end; 255 else do; 256 call ioa_$rs ("Event sent from incorrect ring. ^/event channel = ^d, event message = ^d, event sender = ^b, device signal = ^b^/, ring = ^d, event data ptr = ^p", 257 errmsg, (0), event_call_info.channel_id, event_call_info.message, event_call_info.sender, 258 event_call_info.dev_signal, event_call_info.ring, event_call_info.data_ptr); 259 call errx (errmsg); /* .. ignore unless from ring 0 or 1 */ 260 end; 261 262 net_event_message_arg = event_call_info.message; /* Overlayed on net_event_message. */ 263 264 /**** Here, wakeup_event is non-zero IFF we received a wakeup from the 265* login server telling us that a MC channel dialed up or hung up. 266* Otherwise, the event message contains a type-code which, combined 267* with the network type, determines what kind of wakeup we must process. */ 268 269 if wakeup_event = -1 270 then /* not set already */ 271 wakeup_event = decode_event_type (net_event_message.network_type, net_event_message.type); 272 273 if mc_anstbl.trace 274 then call sys_log_ (SL_LOG_SILENT, 275 "^a: ^a state wait ^[-1(MASKED)^;ZERO^;wait_dialup^;wait_answerback^;wait_ready^;wait_command^] message ^a.", 276 ME, mc_ate.real_tty_name, mc_ate.tra_vec + 2, 277 /* -1 -> 1 */ 278 EVENT_TO_PNAME (wakeup_event)); 279 280 if wakeup_event = -1 /* i.e. a bad event type, already logged */ 281 then goto ttydone; 282 283 if mc_ate.tra_vec = -1 284 then go to ttydone; /* masked, whatever */ 285 tty_state = 0; 286 if mc_ate.iocb = null () 287 then if wakeup_event = DIALUP_EVENT & mc_ate.tra_vec = MC_WAIT_DIALUP 288 then do; 289 code = 0; 290 call mc_commands_$create_iocb (mc_atep, code); 291 if code ^= 0 292 then do; 293 call hphcs_$syserr_error_code (ANNOUNCE, code, 294 "^a: Connecting to ^a^[ (vchannel ^a)^;^s^].", ME, mc_ate.real_tty_name, 295 mc_ate.flags.virtual, mc_ate.virtual_tty_name); 296 297 call mc_commands_$remove_tty ((mc_ate.real_tty_name), "1"b, code); 298 goto ttydone; 299 end; 300 end; 301 else do; 302 call hphcs_$syserr (ANNOUNCE, 303 "^a: Channel ^a^[ (vchannel ^a)^;^s^] received ^a wakeup while awaiting DIALUP.", 304 ME, mc_ate.real_tty_name, mc_ate.flags.virtual, mc_ate.virtual_tty_name, 305 EVENT_TO_PNAME (wakeup_event)); 306 goto ttydone; 307 end; 308 309 call iox_$control (mc_ate.iocb, "state", addr (tty_state), code); 310 if tty_state ^= TTY_STATE_DIALED_UP 311 then if wakeup_event ^= HANGUP_EVENT & wakeup_event ^= MASKED_EVENT 312 then wakeup_event = HANGUP_EVENT; /* treat it as a hangup */ 313 314 if wakeup_event = QUIT_EVENT 315 then if sc_stat_$admin_sci_ptr = mc_ate.sci_ptr & mc_ate.sci_ptr ^= null () 316 then do; 317 mc_ate.control.inhibit = "0"b; /* Allow output to come out. */ 318 call hcs_$wakeup (mc_anstbl.mc_procid, mc_ate.queue_event, 0, code); 319 call as_$meter_exit (MSGCORD_METER); 320 /* turn off metering before returning */ 321 call ssu_$abort_line (mc_ate.sci_ptr, 0, "BREAK key aborted command execution."); 322 end; 323 324 if wakeup_event = HANGUP_EVENT | wakeup_event = MASKED_EVENT 325 /* line hung up */ 326 then do; 327 if wakeup_event = MASKED_EVENT 328 then call hphcs_$syserr (BEEP, "^a: channel ^a masked by FNP.", ME, mc_ate.real_tty_name); 329 else if mc_ate.tra_vec < MC_WAIT_READY /* only tattle once */ 330 then do; /* so quietly go back to listening */ 331 mc_ate.tra_vec = MC_WAIT_DIALUP; 332 if cdtep ^= null 333 then call listen_if_mpx_up (); 334 go to ttydone; 335 end; 336 337 go to tty_hung; /* report it */ 338 end; 339 340 else if wakeup_event = OUTPUT_SPACE_AVAILABLE_EVENT 341 /* output done, rather than input arrived */ 342 then go to check_ow; /* see if we have more */ 343 else if wakeup_event = LINE_STATUS_EVENT 344 then call FLUSH_LINE_STATUS; 345 346 if mc_ate.tra_vec = MC_WAIT_DIALUP 347 then do; /* whatever it said, we see if we are alive */ 348 call iox_$control (mc_ate.iocb, "state", addr (tty_state), code); 349 if code ^= 0 | tty_state < TTY_STATE_DIALED_UP 350 then do; 351 if cdtep ^= null () 352 then call listen_if_mpx_up; 353 go to ttydone; 354 end; 355 356 mc_ate.control.inhibit = "1"b; /* .. yes. Inhibit output. */ 357 call SET_TERM_TYPE (""); /* set the default terminal type */ 358 if cdtep = null () /* DSA channel */ 359 then read_answerback = "0"b; /* DSA doesn't support answerback */ 360 else read_answerback = ^cdte.flags.dont_read_answerback; 361 362 363 if read_answerback 364 then do; 365 call iox_$control (mc_ate.iocb, "resetread", null (), (0)); 366 call ipc_$drain_chn (mc_ate.event, (0)); 367 /* don't get fooled */ 368 call iox_$control (mc_ate.iocb, "wru", null (), code); 369 if code = error_table_$undefined_order_request 370 then goto SKIP_ANSWERBACK; 371 372 if code ^= 0 373 then do; 374 call hphcs_$syserr_error_code (ANNOUNCE, code, "^a: wru failed for ^a.", ME, 375 mc_ate.real_tty_name); 376 go to tty_err; 377 end; 378 mc_ate.tra_vec = MC_WAIT_ANSWERBACK; 379 goto ttydone; /* come back later */ 380 end; 381 else do; 382 SKIP_ANSWERBACK: 383 mc_ate.tra_vec = MC_WAIT_READY; 384 call GREET; 385 386 call mc_con_rec_$check; 387 end; 388 end; /* end DIALUP message processing */ 389 390 else if mc_ate.tra_vec = MC_WAIT_ANSWERBACK 391 then do; 392 mc_ate.tra_vec = MC_WAIT_READY; 393 call get_chars (0); /* no timeout tolerance */ 394 if length_read_in > 0 395 then do; 396 if mc_anstbl.trace 397 then call sys_log_ (SL_LOG_SILENT, "^a: ^a WRU response ^a", ME, mc_ate.real_tty_name, 398 substr (input_buffer, 1, length_read_in)); 399 type_to_set = ""; 400 if mc_ate.iocb = null () 401 then do; 402 unspec (TI) = ""b; 403 TI.version = terminal_info_version; 404 call iox_$control (mc_ate.iocb, "terminal_info", addr (TI), code); 405 if code ^= 0 406 then do; 407 call ttt_info_$decode_answerback ( 408 substr (input_buffer, 1, length_read_in), (cdte.line_type), 409 type_to_set, (""), code); 410 /* ignore code, we will leave the initial terminal type if we have to */ 411 end; 412 end; 413 end; 414 else type_to_set = ""; /* default */ 415 call SET_TERM_TYPE (type_to_set); 416 call iox_$control (mc_ate.iocb, "resetread", null (), (0)); 417 call GREET; 418 call mc_con_rec_$check; 419 end; 420 421 422 /**** Arriving here, the terminal is dialed up, we were not trying to get 423* rid of output. So we look for input. */ 424 425 READ_COMMAND: 426 do while ("1"b); 427 call get_line (0); 428 if length_read_in = 0 429 then go to check_ow; /* If nothing read, done. */ 430 431 432 if verify (substr (input_buffer, 1, length_read_in), WHITESPACE) = 0 433 /* Its all whitespace */ 434 then do; 435 if mc_ate.control.inhibit /* toggle off */ 436 then do; 437 call timer_manager_$reset_alarm_wakeup (mc_ate.event); 438 mc_ate.control.inhibit = "0"b; 439 end; 440 else do; 441 mc_ate.control.inhibit = "1"b; 442 /* Don't interrupt operator for a while. */ 443 call timer_manager_$alarm_wakeup (30, "11"b, mc_ate.event); 444 /* 30 seconds of peace and quiet */ 445 call write ("OPER: "); 446 end; 447 end; 448 else do; /* just execute the command, bud. */ 449 mc_ate.control.inhibit = "1"b; /* Don't interrupt operator for a while. */ 450 call sc_process_command_line_ (mc_ate.sci_ptr, addr (input_buffer), length_read_in); 451 mc_ate.control.inhibit = "0"b; /* Allow output. */ 452 end; 453 end; /* Try to read more */ 454 455 /* -------------------------------------------------------- */ 456 457 /* Come here when tty appears to be hung up */ 458 459 tty_hung: 460 if sc_stat_$shutdown_typed 461 then do; /* if shutting down */ 462 call sys_log_ (SL_LOG_SILENT, "^a: Line ^a hung up.", ME, mc_ate.real_tty_name); 463 mc_ate.tra_vec = -1; 464 go to stim; /* kick outputter */ 465 end; 466 else if mc_ate.tra_vec >= MC_WAIT_READY 467 then call hphcs_$syserr (BEEP, "^a: channel ^a hung up.", ME, mc_ate.real_tty_name); 468 469 /**** If the channel is normally designated as MC service (as opposed to being 470* "dial system"'ed), then we listen for another dialup on this channel 471* wherepon we will continue message coordinator service. If, however, 472* the channel is a network connection or an MCS channel in temporary MC 473* service, then we remove it from MC service and give it back to the 474* answering service. */ 475 476 if cdtep = null () 477 then perm_mc_service = ""b; 478 else perm_mc_service = (cdte.service_type = MC_SERVICE); 479 480 if ^perm_mc_service 481 then do; /* remove from MC service */ 482 call mc_commands_$remove_tty ((mc_ate.real_tty_name), ""b, code); 483 if code ^= 0 484 then call hphcs_$syserr_error_code (ANNOUNCE, code, "^a: Could not remove ^a from MC use.", ME, 485 mc_ate.real_tty_name); 486 487 if cdtep ^= null 488 then do; 489 call astty_$tty_event (cdtep, code); 490 if code ^= 0 491 then call hphcs_$syserr_error_code (ANNOUNCE, code, 492 "^a: Could not get channel ^a back from MC.", ME, cdte.name); 493 cdte.current_service_type = cdte.service_type; 494 cdte.dialed_to_procid = ""b; 495 cdte.dial_ev_chn = 0; 496 cdte.process = null (); 497 cdte.tra_vec = WAIT_GREETING_MSG; 498 cdte.in_use = NOW_HUNG_UP; 499 if cdte.flags.access_control.slave_dial 500 then call lg_ctl_$logout_channel (cdtep, "mc hangup"); 501 message = "device"; 502 call hcs_$wakeup (mc_anstbl.mc_procid, cdte.event, addr (message) -> fixed_bin_71, code); 503 if code ^= 0 504 then call hphcs_$syserr_error_code (ANNOUNCE, code, 505 "^a: Could not notify answering service of new login channel ^a.", ME, cdte.name); 506 end; 507 goto ttydone; 508 end; 509 510 else do; 511 mc_ate.tra_vec = MC_WAIT_DIALUP; 512 if cdtep ^= null () 513 then call listen_if_mpx_up (); 514 go to error_exit; 515 end; 516 517 518 /* Come here when we get an error code from the ttydim. */ 519 /* We check for hangup */ 520 /* Message is printed elsewhere */ 521 522 tty_err: 523 if code = error_table_$line_status_pending /* we lost the wakeup? */ 524 then do; 525 call FLUSH_LINE_STATUS; 526 go to ttydone; 527 end; 528 if code ^= error_table_$io_no_permission 529 then call iox_$control (mc_ate.iocb, "hangup", null (), (0)); 530 531 mc_ate.tra_vec = MC_WAIT_DIALUP; 532 if cdtep ^= null 533 then call listen_if_mpx_up (); 534 535 error_exit: 536 mc_ate.control.inhibit = "0"b; /* Allow output to come out. */ 537 call hcs_$wakeup (mc_anstbl.mc_procid, mc_ate.queue_event, 0, code); 538 539 /**** If a message coordinator terminal hangs up, force a sign_out. We 540* may get here as a result of a drop command. If so, we have already 541* signed out the terminal and desctroyed the ssu invocation. */ 542 543 if mc_ate.signed_on & mc_ate.sci_ptr ^= null () 544 then do; 545 call mc_commands_$sign_out (mc_atep, old_operator_name, (0)); 546 call lg_ctl_$logout_operator (ssu_$get_info_ptr (mc_ate.sci_ptr), old_operator_name, "hangup"); 547 end; 548 549 if sc_stat_$admin_sci_ptr = mc_ate.sci_ptr & mc_ate.sci_ptr ^= null () 550 then do; 551 call as_$meter_exit (MSGCORD_METER); /* turn off metering before returning */ 552 sc_subsystem_info_ptr = ssu_$get_info_ptr (sc_stat_$admin_sci_ptr); 553 call sc_subsystem_info.hangup_entry (sc_stat_$admin_sci_ptr); 554 end; 555 556 /* Come here when we have hung out a read and found no input. 557* The ttydim will send us a wakeup when there is some 558* If there is stacked output for this channel, or if the device is in output 559* wait, send a wakeup to the output driver for the device 560* (mc_wakeups_$typer_out). */ 561 562 check_ow: 563 if (mc_ate.output_wait | mc_ate.output_pending) 564 then 565 stim: 566 call hcs_$wakeup (mc_anstbl.mc_procid, mc_ate.queue_event, 0, code); 567 568 /* ALL RETURNS MUST COME HERE TO TURN OFF METERING BEFORE RETURNING !!! */ 569 570 ttydone: 571 call as_$meter_exit (MSGCORD_METER); /* turn off metering before returning */ 572 return; /* Exit */ 573 574 /* -------------------------------------------------------- */ 575 576 get_chars: 577 procedure (time); 578 579 declare time fixed bin (71); 580 581 call timed_io_$get_chars (mc_ate.iocb, time, addr (input_buffer), length (input_buffer), length_read_in, code); 582 go to READ_COMMON; 583 584 get_line: 585 entry (time); 586 587 call timed_io_$get_line (mc_ate.iocb, time, addr (input_buffer), length (input_buffer), length_read_in, code); 588 READ_COMMON: 589 if code = error_table_$timeout 590 then code = 0; 591 if code = error_table_$io_no_permission 592 then go to tty_hung; 593 if code ^= 0 594 then go to tty_err; 595 596 end get_chars; 597 598 599 write: 600 proc (message); 601 602 declare message char (*); 603 604 /**** This should only be used for short messages. It assumes that 605* a moment sleeping will get rid of the output. */ 606 607 608 call timed_io_$put_chars (mc_ate.iocb, 10 * 1000 * 1000, addr (message), length (message), (0), code); 609 /* can't block, but patience is possible */ 610 if code = error_table_$timeout 611 then code = 0; 612 if code = error_table_$io_no_permission 613 then go to tty_hung; 614 if code ^= 0 615 then go to tty_err; 616 end write; 617 618 619 errx: 620 proc (msg); 621 dcl msg char (*); 622 623 call hphcs_$syserr (ANNOUNCE, "^a: ^a", ME, msg); 624 go to ttydone; 625 626 end errx; 627 628 629 listen_if_mpx_up: 630 procedure; 631 632 dcl mpx_name char (32); 633 dcl state fixed bin; 634 dcl i fixed bin; 635 dcl codex fixed bin (35); 636 637 i = index (reverse (cdte.name), "."); 638 if i = 0 639 then return; 640 mpx_name = substr (cdte.name, 1, length (cdte.name) - i); 641 call multiplexer_mgr_$state_mpx (mpx_name, state, codex); 642 if codex = 0 643 then if state = FNP_UP 644 then call iox_$control (mc_ate.iocb, "listen", null (), (0)); 645 return; 646 647 end listen_if_mpx_up; 648 649 /* entry used by multiplexer mgr when mpx crashes. We are given a 650* cdte pointer instead of a mc_ate pointer */ 651 652 simulated_wakeup: 653 entry (Event_call_info_ptr); 654 655 dcl 1 local_event_call_info 656 aligned like event_call_info automatic; 657 dcl i fixed bin; 658 659 event_call_info_ptr = Event_call_info_ptr; 660 local_event_call_info = event_call_info; 661 cdtep = event_call_info.data_ptr; 662 mc_ansp = sc_stat_$mc_ansp; 663 do i = 1 to mc_anstbl.current_size; 664 mc_atep = addr (mc_anstbl.entry (i)); 665 if mc_ate.active 666 then if mc_ate.real_tty_name = cdte.name 667 then do; 668 local_event_call_info.channel_id = mc_ate.event; 669 local_event_call_info.data_ptr = mc_atep; 670 call mc_tty_ (addr (local_event_call_info)); 671 return; 672 end; 673 end; 674 return; 675 676 GREET: 677 procedure; 678 679 declare message char (100); 680 681 call ioa_$rs ("Channel ^a attached by Message Coordinator.", message, (0), mc_ate.real_tty_name); 682 call write (rtrim (message)); 683 mc_ate.control.inhibit = "0"b; /* Reset output-inhibit */ 684 mc_ate.tra_vec = MC_WAIT_READY; 685 return; 686 end GREET; 687 688 SET_TERM_TYPE: 689 procedure (a_type_to_set); 690 691 declare a_type_to_set char (*); 692 declare type_to_set char (32); 693 694 if cdtep = null () 695 then return; /* DSA doesn't allow changing terminal type */ 696 697 type_to_set = a_type_to_set; 698 699 if type_to_set = "" 700 then do; 701 if cdte.current_terminal_type ^= "" 702 then type_to_set = cdte.current_terminal_type; 703 else if cdte.initial_terminal_type ^= "" 704 then type_to_set = cdte.initial_terminal_type; 705 else do; 706 GET_TERM_TYPE: 707 unspec (TI) = ""b; 708 TI.term_type = ""; 709 TI.version = terminal_info_version; 710 call iox_$control (mc_ate.iocb, "terminal_info", addr (TI), code); 711 if (code = error_table_$io_no_permission) 712 then go to tty_hung; /* forgive and forget about it */ 713 714 if code ^= 0 715 then go to TTP_ERROR; 716 717 call ttt_info_$default_term_type (TI.line_type, TI.baud_rate, type_to_set, code); 718 if code ^= 0 719 then 720 TTP_ERROR: 721 do; 722 call hphcs_$syserr_error_code (ANNOUNCE, code, 723 "^a: No default ttp for ^a line ^d baud ^d.", ME, mc_ate.real_tty_name, 724 TI.line_type, TI.baud_rate); 725 go to tty_err; 726 end; 727 end; 728 end; 729 730 STTI.version = 1; 731 STTI.name = type_to_set; 732 STTI.flags = "1"b; 733 STTI.mbz = "0"b; 734 if mc_anstbl.trace 735 then call sys_log_ (SL_LOG_SILENT, "^a: ^a stty -ttp ^a", ME, mc_ate.real_tty_name, type_to_set); 736 call iox_$control (mc_ate.iocb, "set_term_type", addr (STTI), code); 737 if code = error_table_$io_no_permission 738 then go to tty_hung; 739 if code ^= 0 740 then do; 741 call hphcs_$syserr_error_code (ANNOUNCE, code, "^a: Failed to set terminal type for ^a.", ME, 742 mc_ate.real_tty_name); 743 go to tty_err; 744 end; 745 end SET_TERM_TYPE; 746 747 FLUSH_LINE_STATUS: 748 procedure; 749 750 declare code fixed bin (35); 751 752 code = error_table_$line_status_pending; 753 do while (code ^= 0); 754 call iox_$control (mc_ate.iocb, "line_status", addr (line_status_space), code); 755 if code ^= 0 & code ^= error_table_$line_status_pending 756 then go to tty_err; 757 end; 758 call iox_$control (mc_ate.iocb, "start", null (), (0)); 759 end FLUSH_LINE_STATUS; 760 761 decode_event_type: 762 procedure (P_network_type, P_event_type) returns (fixed bin); 763 764 /**** This internal procedure returns an generic event type based on 765* the network type and the event type. */ 766 767 dcl P_network_type fixed bin (4) unsigned unaligned parameter; 768 dcl P_event_type fixed bin (8) unsigned unaligned parameter; 769 dcl event_type fixed bin; 770 1 1 /* BEGIN INCLUDE FILE ... net_event_message.incl.pl1 */ 1 2 1 3 /****^ HISTORY COMMENTS: 1 4* 1) change(86-07-30,Kissel), approve(86-07-30,MCR7475), audit(86-08-04,Coren), 1 5* install(86-10-09,MR12.0-1181): 1 6* This include file was formerly tty_event_message.incl.pl1. It has been 1 7* updated with different fields and new constants, and renamed to 1 8* net_event_message.incl.pl1 1 9* 2) change(87-04-20,GDixon), approve(87-07-13,MCR7694), 1 10* audit(87-06-24,Hartogs), install(87-08-04,MR12.1-1056): 1 11* Add NETWORK_TYPE_VALUES array. 1 12* END HISTORY COMMENTS */ 1 13 1 14 /* describes event message passed with wakeups from the tty DIM */ 1 15 /* Created 5/24/76 by Robert S. Coren */ 1 16 1 17 /* format: style3,linecom,ifthenstmt,indthenelse,^indnoniterdo,indnoniterend,initcol3,dclind5,idind32 */ 1 18 1 19 dcl net_event_message_arg fixed bin (71); /* For calling IPC */ 1 20 dcl NET_EVENT_MESSAGE_VERSION_1 bit (2) internal static options (constant) init ("10"b); 1 21 1 22 dcl 1 net_event_message aligned based (addr (net_event_message_arg)), 1 23 2 version bit (2) unaligned, /* Currently version 1 */ 1 24 2 reason bit (16) unaligned, /* Additional info about the event */ 1 25 2 pad bit (6) unaligned, /* Must be zero */ 1 26 2 network_type fixed bin (4) unsigned unaligned, 1 27 /* See below for constants */ 1 28 2 type fixed bin (8) unsigned unaligned, 1 29 /* Type of interrupt, see below */ 1 30 2 handle fixed bin (35) aligned;/* Caller's handle (devx for MCS, handle for DSA) */ 1 31 1 32 /* Network type constants */ 1 33 1 34 dcl MCS_NETWORK_TYPE fixed bin (4) unsigned internal static options (constant) init (0); 1 35 dcl DSA_NETWORK_TYPE fixed bin (4) unsigned internal static options (constant) init (1); 1 36 dcl MOWSE_NETWORK_TYPE fixed bin (4) unsigned internal static options (constant) init (2); 1 37 1 38 dcl NETWORK_TYPE_VALUES (0:2) char(8) varying int static options(constant) init( 1 39 "MCS", 1 40 "DSA", 1 41 "MOWSE"); 1 42 1 43 1 44 /* MCS event message type constants */ 1 45 1 46 dcl MAX_MCS_EVENT_MSG_TYPE fixed bin internal static options (constant) init (8); 1 47 1 48 dcl MCS_UNSPECIFIED_MSG fixed bin internal static options (constant) init (0); 1 49 /* used for "start" order, etc. */ 1 50 dcl MCS_DIALUP_MSG fixed bin internal static options (constant) init (1); 1 51 /* dialup */ 1 52 dcl MCS_HANGUP_MSG fixed bin internal static options (constant) init (2); 1 53 /* hangup */ 1 54 dcl MCS_DIALOUT_MSG fixed bin internal static options (constant) init (3); 1 55 /* dialout status returned */ 1 56 dcl MCS_QUIT_MSG fixed bin internal static options (constant) init (4); 1 57 /* quit */ 1 58 dcl MCS_READ_MSG fixed bin internal static options (constant) init (5); 1 59 /* input arrived */ 1 60 dcl MCS_WRITE_MSG fixed bin internal static options (constant) init (6); 1 61 /* output completed */ 1 62 dcl MCS_LINE_STATUS_MSG fixed bin internal static options (constant) init (7); 1 63 /* control tables sent status */ 1 64 dcl MCS_MASKED_MSG fixed bin internal static options (constant) init (8); 1 65 /* channel masked by FNP */ 1 66 1 67 dcl MCS_MSG_TYPE_TO_PNAME (0:8) char (20) internal static options (constant) init ("unspecified", 1 68 /* 0 */ 1 69 "dialup", /* 1 */ 1 70 "hangup", /* 2 */ 1 71 "dialout status", /* 3 */ 1 72 "quit", /* 4 */ 1 73 "read", /* 5 */ 1 74 "write", /* 6 */ 1 75 "line status", /* 7 */ 1 76 "masked"); /* 8 */ 1 77 1 78 /* DSA event message type constants */ 1 79 1 80 dcl MAX_DSA_EVENT_MSG_TYPE fixed bin internal static options (constant) init (19); 1 81 1 82 dcl DSA_UNSPECIFIED_MSG fixed bin (8) uns internal static options (constant) init (0); 1 83 dcl DSA_ATTENTION_MSG fixed bin (8) uns internal static options (constant) init (1); 1 84 dcl DSA_DATA_ATTENTION_MSG fixed bin (8) uns internal static options (constant) init (2); 1 85 dcl DSA_DEMAND_RELEASE_SRU_MSG fixed bin (8) uns internal static options (constant) init (3); 1 86 dcl DSA_DEMAND_TURN_MSG fixed bin (8) uns internal static options (constant) init (4); 1 87 dcl DSA_DEMAND_TURN_ACK_MSG fixed bin (8) uns internal static options (constant) init (5); 1 88 dcl DSA_PURGE_MSG fixed bin (8) uns internal static options (constant) init (6); 1 89 dcl DSA_RECOVER_MSG fixed bin (8) uns internal static options (constant) init (7); 1 90 dcl DSA_RECOVER_ACK_MSG fixed bin (8) uns internal static options (constant) init (8); 1 91 dcl DSA_RELEASE_SRU_MSG fixed bin (8) uns internal static options (constant) init (9); 1 92 dcl DSA_RESUME_MSG fixed bin (8) uns internal static options (constant) init (10); 1 93 dcl DSA_RESUME_ACK_MSG fixed bin (8) uns internal static options (constant) init (11); 1 94 dcl DSA_SUSPEND_MSG fixed bin (8) uns internal static options (constant) init (12); 1 95 dcl DSA_SUSPEND_ACK_MSG fixed bin (8) uns internal static options (constant) init (13); 1 96 dcl DSA_TERM_ABNORMAL_MSG fixed bin (8) uns internal static options (constant) init (14); 1 97 dcl DSA_ESTABLISHMENT_MSG fixed bin (8) uns internal static options (constant) init (15); 1 98 dcl DSA_TERMINATED_MSG fixed bin (8) uns internal static options (constant) init (16); 1 99 dcl DSA_USER_UNASSIGN_MSG fixed bin (8) uns internal static options (constant) init (17); 1 100 dcl DSA_DATA_INPUT_MSG fixed bin (8) uns internal static options (constant) init (18); 1 101 dcl DSA_DATA_OUTPUT_MSG fixed bin (8) uns internal static options (constant) init (19); 1 102 1 103 dcl DSA_MSG_TYPE_TO_PNAME (0:19) char (20) internal static options (constant) init ("unspecified", 1 104 /* 0 */ 1 105 "attention", /* 1 */ 1 106 "data_attention", /* 2 */ 1 107 "demand_release_sru", /* 3 */ 1 108 "demand_turn", /* 4 */ 1 109 "demand_turn_ack", /* 5 */ 1 110 "purge", /* 6 */ 1 111 "recover", /* 7 */ 1 112 "recover_ack", /* 8 */ 1 113 "release_sru", /* 9 */ 1 114 "resume", /* 10 */ 1 115 "resume_ack", /* 11 */ 1 116 "suspend", /* 12 */ 1 117 "suspend_ack", /* 13 */ 1 118 "terminate_abnormal", /* 14 */ 1 119 "establishment", /* 15 */ 1 120 "terminated", /* 16 */ 1 121 "user_unassign", /* 17 */ 1 122 "data input", /* 18 */ 1 123 "data output"); /* 19 */ 1 124 1 125 /* END INCLUDE FILE ... net_event_message.incl.pl1 */ 771 772 773 if P_network_type = MCS_NETWORK_TYPE 774 then do; 775 if P_event_type = MCS_UNSPECIFIED_MSG 776 then event_type = UNSPECIFIED_EVENT; 777 else if P_event_type = MCS_DIALUP_MSG 778 then event_type = DIALUP_EVENT; 779 else if P_event_type = MCS_HANGUP_MSG 780 then event_type = HANGUP_EVENT; 781 else if P_event_type = MCS_QUIT_MSG 782 then event_type = QUIT_EVENT; 783 else if P_event_type = MCS_READ_MSG 784 then event_type = INPUT_AVAILABLE_EVENT; 785 else if P_event_type = MCS_WRITE_MSG 786 then event_type = OUTPUT_SPACE_AVAILABLE_EVENT; 787 else if P_event_type = MCS_LINE_STATUS_MSG 788 then event_type = LINE_STATUS_EVENT; 789 else if P_event_type = MCS_MASKED_MSG 790 then event_type = MASKED_EVENT; 791 else do; 792 if P_event_type > MAX_MCS_EVENT_MSG_TYPE 793 then call sys_log_$error_log (SL_LOG_SILENT, error_table_$bad_arg, ME, 794 "Invalid MCS wakeup event type ^d.", P_event_type); 795 else call sys_log_$error_log (SL_LOG_SILENT, error_table_$bad_arg, ME, 796 "Unexpected MCS wakeup event type ^a.", MCS_MSG_TYPE_TO_PNAME (P_event_type)); 797 event_type = -1; 798 end; 799 end; 800 else if P_network_type = DSA_NETWORK_TYPE 801 then do; 802 if P_event_type = DSA_UNSPECIFIED_MSG 803 then event_type = UNSPECIFIED_EVENT; 804 else if P_event_type = DSA_ESTABLISHMENT_MSG 805 then event_type = DIALUP_EVENT; 806 else if P_event_type = DSA_TERM_ABNORMAL_MSG 807 then event_type = HANGUP_EVENT; 808 else if P_event_type = DSA_ATTENTION_MSG 809 then event_type = QUIT_EVENT; 810 else if P_event_type = DSA_DATA_INPUT_MSG 811 then event_type = INPUT_AVAILABLE_EVENT; 812 else if P_event_type = DSA_DATA_OUTPUT_MSG 813 then event_type = OUTPUT_SPACE_AVAILABLE_EVENT; 814 else do; 815 if P_event_type > MAX_DSA_EVENT_MSG_TYPE 816 then call sys_log_$error_log (SL_LOG_SILENT, error_table_$bad_arg, ME, 817 "Invalid DSA event type ^d.", P_event_type); 818 else call sys_log_$error_log (SL_LOG_SILENT, error_table_$bad_arg, ME, 819 "Unexpected DSA event type ""^a"".", DSA_MSG_TYPE_TO_PNAME (P_event_type)); 820 event_type = -1; 821 end; 822 end; 823 else do; 824 call sys_log_$error_log (SL_LOG_SILENT, error_table_$bad_arg, ME, 825 "Unexpected network type ^d in event message.", P_network_type); 826 event_type = -1; 827 end; 828 return (event_type); 829 830 end decode_event_type; 831 832 /* format: off */ 833 /* BEGIN INCLUDE FILE ... as_data_.incl.pl1 ... */ 2 2 2 3 /* format: style4 */ 2 4 2 5 /* This file must be kept in sync with as_data_.alm */ 2 6 2 7 /****^ HISTORY COMMENTS: 2 8* 1) change(86-09-21,Beattie), approve(86-09-22,MCR7542), 2 9* audit(86-10-31,Brunelle), install(86-11-12,MR12.0-1211): 2 10* Remove references to the 963 and 029 preaccess commands and remove support 2 11* for ARDS, 202_ETX, 2741 and 1050 in system interfaces. 2 12* 2) change(86-09-25,Swenson), approve(87-07-20,MCR7737), 2 13* audit(87-07-20,GDixon), install(87-08-04,MR12.1-1056): 2 14* Add references to as_data_ entrypoints added for Login Server. 2 15* 3) change(87-03-03,Brunelle), approve(87-07-20,MCR7697), 2 16* audit(87-07-20,GDixon), install(87-08-04,MR12.1-1056): 2 17* Added new user signal field of inacrcvd (14) to handle inactivity response 2 18* from user. 2 19* END HISTORY COMMENTS */ 2 20 2 21 dcl as_data_$BS char (1) aligned ext static; /* BACKSPACE character */ 2 22 dcl as_data_$CR char (1) aligned ext static; /* CARRIAGE RETURN character */ 2 23 dcl as_data_$abs_dim char (32) ext static; /* absentee DIM */ 2 24 dcl as_data_$acct_update_priority fixed bin ext static; /* accounting update IPC priority */ 2 25 dcl as_data_$acsdir char (168) ext static; /* Access Control Segment directory */ 2 26 dcl as_data_$ansp ptr ext static; /* answer_table */ 2 27 dcl as_data_$as_procid bit (36) aligned ext static; /* Answering Service process id */ 2 28 dcl as_data_$as_ring fixed bin (3) ext static; /* AS operating ring */ 2 29 dcl as_data_$as_tty char (6); /* AS master tty channel */ 2 30 dcl as_data_$asmtp ptr ext static; /* AS meter table */ 2 31 dcl as_data_$autp ptr ext static; /* absentee_user_table */ 2 32 dcl as_data_$buzzardp ptr ext static; /* dpg_ list of buteo processes */ 2 33 dcl as_data_$cdtp ptr ext static; /* CDT */ 2 34 dcl as_data_$default_weight fixed bin (35) ext; /* default user process load control weight */ 2 35 dcl as_data_$devtabp ptr ext static; /* device_table */ 2 36 dcl as_data_$dft_user_ring fixed bin (3) ext static; /* default user ring */ 2 37 dcl as_data_$dutp ptr ext static; /* daemon_user_table */ 2 38 dcl as_data_$g115_dim char (32) ext static; 2 39 dcl as_data_$lct_initialized bit (1) aligned ext static; /* LCT allocated in ring 0 */ 2 40 dcl as_data_$lct_size fixed bin ext static; /* CDT tty channels + spares */ 2 41 dcl as_data_$max_user_ring fixed bin (3) ext static; /* maximum user ring */ 2 42 dcl as_data_$mgtp ptr ext static; /* master group table */ 2 43 dcl as_data_$mrd_dim char (32) ext static; /* daemon's message routing DIM */ 2 44 dcl as_data_$ntty_dim char (32) ext static; /* network connection DIM */ 2 45 dcl as_data_$pdtdir char (168) ext static; /* PDT directory */ 2 46 dcl as_data_$pit_ptr ptr ext static; /* pit_temp_ */ 2 47 dcl as_data_$rcpdir char (168) ext static; /* RCP directory */ 2 48 dcl as_data_$request_priority fixed bin ext static; 2 49 dcl as_data_$rs_ptrs (0:9) ptr ext static; /* rate_structures */ 2 50 dcl as_data_$rtdtp ptr ext static; /* RTDT */ 2 51 dcl as_data_$sat_htp ptr ext static; /* SAT hash table */ 2 52 dcl as_data_$satp ptr ext static; /* SAT */ 2 53 dcl as_data_$suffix (0:9) char (2) unaligned ext static; 2 54 dcl as_data_$sysdir char (168) ext static; /* system control directory */ 2 55 dcl as_data_$teens_suffix (10:19) char (2) unaligned ext static; 2 56 dcl as_data_$terminet_tabs_string char (144) varying ext static; 2 57 dcl as_data_$tty_dim char (32) ext static; /* standard interactive DIM */ 2 58 dcl as_data_$update_priority fixed bin ext static; /* ??? */ 2 59 dcl as_data_$version char (8) ext static; /* AS version */ 2 60 dcl as_data_$whoptr ptr ext static; /* whotab */ 2 61 2 62 dcl 1 as_data_$login_args aligned ext static, /* control arguments for login */ 2 63 2 n_login_args fixed bin, 2 64 2 pad fixed bin, 2 65 2 login_args (55 /* as_data_$login_args.n_login_args */) char (24) unaligned; 2 66 2 67 dcl 1 as_data_$signal_types ext static aligned, /* IPC process control signals */ 2 68 2 n_signals fixed bin, 2 69 2 pad fixed bin, 2 70 2 signals (14 /* as_data_$signal_types.n_signals */) char (8) unaligned; 2 71 2 72 dcl 1 as_data_$system_signal_types ext static aligned, /* IPC process control signals */ 2 73 2 n_system_signals fixed bin, 2 74 2 pad fixed bin, 2 75 2 system_signals (10 /* as_data_$system_signal_types.n_system_signals */) char (8) unaligned; 2 76 2 77 dcl as_data_$login_words fixed bin ext static aligned, 2 78 /* interactive login words */ 2 79 1 as_data_login_words aligned based (addr (as_data_$login_words)), 2 80 2 n_words fixed bin, 2 81 2 pad fixed bin, 2 82 2 words (0 refer (as_data_login_words.n_words)) char (16) unaligned; 2 83 2 84 dcl as_data_$debug_flag bit (1) aligned external static; 2 85 dcl as_data_$ls_request_server_info_ptr ptr external static; 2 86 dcl as_data_$ls_message_buffer_cur_lth fixed bin (18) external static; 2 87 dcl as_data_$ls_message_buffer_max_lth fixed bin (18) external static; 2 88 dcl as_data_$ls_message_buffer_ptr ptr external static; 2 89 2 90 /* END INCLUDE FILE ... as_data_.incl.pl1 ... */ 833 834 /* BEGIN INCLUDE FILE as_meter_numbers.incl.pl1 */ 3 2 3 3 /* These are the names and numbers of the slots in as_meter_table 3 4* (see as_meter_table.incl.pl1). 3 5* 3 6* Written March 1980 by Tom Casey 3 7* Modified June 1981 by T. Casey for MR9.0 to add ABS_TRYLOG_METER. 3 8**/ 3 9 3 10 3 11 /****^ HISTORY COMMENTS: 3 12* 1) change(86-01-31,Herbst), approve(87-07-21,MCR7694), 3 13* audit(87-07-21,GDixon), install(87-08-04,MR12.1-1056): 3 14* A) Add NETUP_METER. 3 15* B) Add AS_METER_NAMES array. 3 16* END HISTORY COMMENTS */ 3 17 3 18 3 19 dcl ASINIT_METER fixed bin int static options (constant) init (1); /* as_init_, parts 1 and 2 */ 3 20 dcl DIALUP_METER fixed bin int static options (constant) init (2); /* dialup_ */ 3 21 dcl DUM_METER fixed bin int static options (constant) init (3); /* daemon_user_manager_ */ 3 22 dcl AUM_METER fixed bin int static options (constant) init (4); /* absentee_user_manager_ */ 3 23 dcl AU_METER fixed bin int static options (constant) init (5); /* absentee_utility_ */ 3 24 dcl CPG_METER fixed bin int static options (constant) init (6); /* cpg_ */ 3 25 dcl DPG_METER fixed bin int static options (constant) init (7); /* dpg_ */ 3 26 dcl ACCTUP_METER fixed bin int static options (constant) init (8); /* accounting updates */ 3 27 dcl INSTALL_METER fixed bin int static options (constant) init (9); /* installs (up_sysctl_) */ 3 28 dcl ABSQ_METER fixed bin int static options (constant) init (10); /* absentee queue reads and writes */ 3 29 dcl MSGCORD_METER fixed bin int static options (constant) init (11); /* message coordinator */ 3 30 dcl COMMAND_METER fixed bin int static options (constant) init (12); /* operator commands, other than admin */ 3 31 dcl SAC_METER fixed bin int static options (constant) init (13); /* sac (send_admin_command handling) */ 3 32 dcl ADMIN_METER fixed bin int static options (constant) init (14); /* admin mode */ 3 33 dcl SSU_METER fixed bin int static options (constant) init (15); /* system_start_up.ec, parts 1, 2, and 3 */ 3 34 dcl FIXPDT_METER fixed bin int static options (constant) init (16); /* cleanup of PDTs after crash (act_ctl_$init) */ 3 35 dcl ABS_TRYLOG_METER fixed bin int static options (constant) init (17); /* attempts to login absentees via call lg_ctl_ 3 36* (the attempts might fail because of load control limits) */ 3 37 dcl NETUP_METER fixed bin int static options (constant) init (18); /* a call to network_accounting_update_ */ 3 38 3 39 dcl recursion_possible bit (18) int static options (constant) init ("000000000011000000"b); /* 11 & 12 (MSGCORD and COMMAND) */ 3 40 3 41 /* Bit length of recursion_possible equals highest slot number given above. */ 3 42 3 43 dcl AS_METER_NAMES (18) char (8) int static options (constant) init ( 3 44 "ASINIT", "DIALUP", "DUM", "AUM", "AU", 3 45 "CPG", "DPG", "ACCTUP", "INSTALL", "ABSQ", 3 46 "MSGCORD", "COMMAND", "SAC", "ADMIN", "SSU", 3 47 "FIXPDT", "TRYABSLG", "NETUP"); 3 48 3 49 /* END INCLUDE FILE as_meter_numbers.incl.pl1 */ 834 835 /* BEGIN INCLUDE FILE ... author_dcl.incl.pl1 */ 4 2 4 3 /* This include file declares the "author" substructure 4 4* in a form suitable for using the PL/I "like" attribute. 4 5* 4 6* Written 750304 by PG 4 7**/ 4 8 4 9 dcl 1 author_dcl aligned based, 5 1 /* BEGIN INCLUDE FILE author.incl.pl1 */ 5 2 5 3 /* the "author" items must always be the first ones in the table. The 5 4* module which moves the converted table to the System Control process 5 5* fills in these data items and assumes them to be at the head of the segment 5 6* regardless of the specific table's actual declaration. The variables 5 7* "lock" and "last_install_time" used to be "process_id" and "ev_channel" 5 8* respectively. For tables installed in multiple processes, these 5 9* are to be used to lock out multiple installations. */ 5 10 5 11 /* Lock should be used as a modification lock. Since, in general, 5 12* entries may not be moved in system tables, even by installations, 5 13* it is sufficient for only installers and programs that change threads 5 14* to set or respect the lock. Simply updating data in an entry 5 15* requires no such protection. 5 16* 5 17* Last_install_time is used by readers of system tables to detect 5 18* installations or other serious modifications. By checking it before 5 19* and after copying a block of data, they can be protected against 5 20* modifications. 5 21* 5 22* Modules that set the lock should save proc_group_id, and then 5 23* put their group id there for the time they hold the lock. 5 24* if they do not actually install the, they should restore the group id. 5 25**/ 5 26 5 27 2 author aligned, /* validation data about table's author */ 5 28 3 proc_group_id char (32), /* process-group-id (personid.projectid.tag) */ 5 29 3 lock bit (36), /* installation lock */ 5 30 3 update_attributes bit (1) unal, /* update/add/delete attributes */ 5 31 3 update_authorization bit (1) unal, /* update only authorizations */ 5 32 3 deferral_notified bit (1) unal, /* installer notified of deferral of installation */ 5 33 3 pad bit (33) unaligned, 5 34 3 last_install_time fixed bin (71), 5 35 3 table char (4), /* name of table, e.g., SAT MGT TTT RTDT PDT etc. */ 5 36 3 w_dir char (64), /* author's working directory */ 5 37 5 38 /* END INCLUDE FILE author.incl.pl1 */ 4 10 4 11 2 pad; 4 12 4 13 /* END INCLUDE FILE ... author_dcl.incl.pl1 */ 835 836 /* BEGIN INCLUDE FILE ... cdt.incl.pl1 */ 6 2 6 3 /* format: style3,idind25,indcomtxt */ 6 4 6 5 /* Channel Definition Table. 6 6* This table lists all of the hardware channels (ports) connected 6 7* to the system, and maintains the attributes of each one. 6 8* 6 9* PG 741230 6 10* Modified by Mike Grady 5/6/76 to add FNP info. 6 11* Modified by Tom Casey 7/29/76 to add more FNP info and a few other things. 6 12* Modified by Robert Coren 6/13/77 to make terminal types be character strings. 6 13* Modified July 1979 by T. Casey to add several variables for MR8.0 process preservation facility. 6 14* Modified December 1980 by E. N. Kittlitz to eliminate cdte.phone_no. 6 15* Modified March 1981 by Robert Coren to add "listening" flag for multiplexers and to add TANDD_SERVICE service_type. 6 16* Modified April 1981 by E. N. Kittlitz to add cdte.dial_ev_chn, cdte.recent_wakeup_time, cdte.recent_wakeup_count. 6 17* Modified July 1981 by T. Casey for MR9.0 to add dialup_flags.detach_after_hangup 6 18* Modified December 1981 by E. N. Kittlitz for cdte.leave_edited, cdte.hold_arg, 6 19* Modified September 1981 by Benson I. Margulies for cdt_mgr_'s tree of multiplexer's. 6 20* Modified August 1982 by E. N. Kittlitz for check_acs. 6 21* Modified January 1983 by Keith Loepere for generic_destination. 6 22* Modified August 1983 by Robert Coren to add mpxe.check and mpxe.retry_load. 6 23* Modified 831216 by E. N. Kittlitz for required_access_class. 6 24* Modified 84-04-01 by BIM to finish communications AIM: 6 25* access class ranges, 6 26* access_control flags. 6 27**/ 6 28 6 29 6 30 /****^ HISTORY COMMENTS: 6 31* 1) change(87-03-17,Beattie), approve(87-04-06,MCR7656), 6 32* audit(87-07-13,Parisek), install(87-08-04,MR12.1-1056): 6 33* Add support for answering service to use IOCBs when tty_ cannot be 6 34* used to service login channels. 6 35* END HISTORY COMMENTS */ 6 36 6 37 6 38 dcl CDT_version_5 fixed bin internal static initial (5) options (constant); 6 39 dcl CDT_version fixed bin internal static initial (6) options (constant); 6 40 6 41 dcl (cdtp, cdtep, fnpep, mpxep) 6 42 ptr; 6 43 6 44 dcl 1 cdt based (cdtp) aligned, /* all of the system channels */ 6 45 2 author like author_dcl.author, /* standard header */ 6 46 2 max_size fixed bin, /* maximum number of cdte's in 255K */ 6 47 2 current_size fixed bin, /* number of last cdte. */ 6 48 2 version fixed bin, 6 49 2 freep fixed bin, /* chain of free cdte's */ 6 50 2 n_cdtes fixed bin, /* number of used cdte's */ 6 51 2 meters_last_reset fixed bin (71), /* clock time dialup meters were reset */ 6 52 2 realtime_in_dialup fixed bin (71), /* Dialup meter */ 6 53 2 cpu_in_dialup fixed bin (71), /* .. */ 6 54 2 pf_in_dialup fixed bin, /* .. */ 6 55 2 pp_in_dialup fixed bin, /* .. */ 6 56 2 entries_to_dialup fixed bin, /* .. */ 6 57 2 flags, 6 58 3 go bit (1) unal, /* ans. serv. said "go ahead and answer the phones" */ 6 59 3 cdt_is_live bit (1) unal, /* cdt is active */ 6 60 3 mux_mgr_system_init 6 61 bit (1) unal, /* mux mgr has loaded top-levels */ 6 62 3 pad1 bit (33) unal, 6 63 2 acceptable_fnp_tbf fixed bin, /* acceptable minutes between FNP crashes */ 6 64 2 spare_channel_count fixed bin, /* number of extra channels to leave room for in ring0 */ 6 65 2 threads aligned like channel_threads, 6 66 /* root of non-fnp-top-level-multiplexers */ 6 67 2 pad2 (31) bit (36) aligned, /* pad header to 80 words */ 6 68 2 fnp_entry dim (8) like fnpe, /* max of 8 FNPs for now */ 6 69 2 cdt_entry dim (2500) like cdte; /* # of cdte's in 255K */ 6 70 6 71 6 72 dcl 1 cdte based (cdtep) aligned, /* a channel */ 6 73 2 in_use fixed bin, /* see dialup_values. 0=NOW_FREE */ 6 74 /**** * These variables are filled in when the CDTE is created by cv_cmf. They are not dynamic. */ 6 75 2 pad1 bit (36) aligned, 6 76 2 name char (32), /* ASCII name of channel */ 6 77 2 access_class (2) bit (72) aligned, /* access class range */ 6 78 2 comment char (48), /* printable message about channel */ 6 79 2 charge_type fixed bin (17) unal, /* billing group */ 6 80 2 service_type fixed bin (17) unal, /* service group (AS, ftp, mc) */ 6 81 2 line_type fixed bin (17) unal, /* tty line type (protocol) */ 6 82 2 baud_rate fixed bin (17) unal, /* 110, 133, 150, etc. */ 6 83 2 modem_type fixed bin (17) unal, /* type of modem on this channel */ 6 84 2 pad2 bit (18) unaligned, 6 85 2 answerback char (8), /* answerback string expected */ 6 86 2 initial_terminal_type 6 87 char (32) unal, /* as specified in the CMF */ 6 88 2 mpx_data unal, /* data used only for multiplexed channels */ 6 89 3 mpx_type fixed bin (17), /* type of multiplexing used */ 6 90 3 mpx_service fixed bin (17), /* service type, active or inactive */ 6 91 2 flags, 6 92 ( 3 attributes, 6 93 4 ck_answerback bit (1), /* ON means that ansbk must equal our records */ 6 94 4 audit_access_error 6 95 bit (1), /* ON means ck that person auth is inside access class range */ 6 96 /* this implies that the access_class describes a range of 6 97* legitimate user auths. */ 6 98 4 hardwired bit (1), /* ON means it is */ 6 99 4 set_modes bit (1), /* ON means to set initial modes at dialup */ 6 100 4 dont_read_answerback 6 101 bit (1), /* ON means don't try to read answerback */ 6 102 4 pada bit (4), 6 103 3 access_control unaligned, /* As below */ 6 104 4 dial_out bit (1), /* dialing user must be on ACS */ 6 105 4 priv_attach bit (1), /* PA_ user must be on ACS */ 6 106 4 dial_server bit (1), /* accept_dials process must be on acs */ 6 107 4 login bit (1), /* logging in user must be on acs */ 6 108 4 slave_dial bit (1), /* dialing user must give -user and be on acs */ 6 109 4 pado bit (3), 6 110 3 options, 6 111 4 execute_initial_command 6 112 bit (1), /* ON means to do it */ 6 113 4 attached_by_operator 6 114 bit (1), /* ON means temporary attachment. */ 6 115 4 private_line bit (1), /* ON means private_line sync modem in use */ 6 116 4 bsc_ebcdic bit (1), /* ON means bsc would like to use ebcdic code set */ 6 117 4 bsc_transparent bit (1), /* ON means bsc is in transparent mode */ 6 118 4 vip_pollselect bit (1), /* ON means VIP line is multidrop */ 6 119 4 autobaud bit (1), /* ON means auto baud detection this channel */ 6 120 4 generic_destination_present 6 121 bit (1), /* ON means that the initial_command field contains 6 122* a generic destination to match on dial_out or priv attach */ 6 123 4 use_iocb bit (1), /* ON means to use IOCB operations to support channel */ 6 124 4 pado bit (9) 6 125 ) unaligned, 6 126 2 initial_command char (64), /* pseudo first input line */ 6 127 /**** The following variables represent dynamic control info, and 6 128* are used mostly by dialup_ and asu_ */ 6 129 2 event fixed bin (71), /* event call channel for channel events */ 6 130 2 current_service_type fixed bin (17) unal, /* Current usage of line. */ 6 131 2 tra_vec fixed bin (17) unal, /* which section of dialup_ to do next */ 6 132 2 count fixed bin (17) unal, /* How many login tries he's had. */ 6 133 2 dialup_flags unal, /* flag bits for dialup to maintain */ 6 134 3 ppm bit (1) unal, /* print preaccess message for IBM terminals */ 6 135 3 cpo bit (1) unal, /* conditional printer-off (depends on answerback */ 6 136 3 wakeup_handler bit (1) unal, /* says who is wakeup handler for this channel */ 6 137 /* 0 = dialup_, 1 = mc_tty_ */ 6 138 3 save_arg bit (1) unal, /* -save login arg given */ 6 139 3 nosave_arg bit (1) unal, /* -nosave login arg given */ 6 140 3 detach_after_hangup 6 141 bit (1) unal, /* remember WAIT_DETACH when setting WAIT_BEFORE_HANGUP */ 6 142 3 leave_edited bit (1) unal, /* user control of edited mode */ 6 143 3 hold_arg bit (1) unal, /* -hold arg given */ 6 144 3 no_hold_arg bit (1) unal, /* -no_hold arg given */ 6 145 3 immediate_arg bit (1) unal, /* -immediate arg given */ 6 146 3 current_access_class_valid 6 147 bit (1) unal, /* dialup_ or lg_ctl_ has determined the current_access_class */ 6 148 3 pad bit (7) unal, 6 149 2 twx fixed bin, /* channel device index */ 6 150 2 state fixed bin, /* channel state */ 6 151 2 tty_id_code char (4), /* channel id (answerback) */ 6 152 2 current_terminal_type 6 153 char (32) unal, /* most recently-set terminal type */ 6 154 2 process ptr unal, /* ptr to ATE owning this channel */ 6 155 2 dialed_to_procid bit (36), /* Dialed channels remember owner's proc id */ 6 156 2 next_channel fixed bin (17) unal, /* cdte index of next channel for this process */ 6 157 2 cur_line_type fixed bin (17) unal, /* line type of currently dialed terminal */ 6 158 2 current_access_class (2) bit (72) aligned, /* This is a range, but at this time it must be a null range. 6 159* We do not yet define multi-class connections, but we will someday. */ 6 160 2 disconnected_ate_index 6 161 fixed bin (17) unal, /* index of ate of disconnected process */ 6 162 2 dial_ctl_ring fixed bin (3) unsigned unaligned, 6 163 /* used by dial_ctl_ to record ring of priv_attach or dial_out attachments */ 6 164 2 dial_rq_privileged bit (1) unaligned, /* used by dial ctl to record comm priv from priv_attach or dial_out request */ 6 165 2 pad3 bit (14) unaligned, 6 166 /**** The following variables are kept for metering purposes. */ 6 167 2 n_dialups fixed bin, /* number of times channel has been dialed up */ 6 168 2 n_logins fixed bin, /* number of login sessions on this channel */ 6 169 2 dialed_up_time fixed bin (35), /* total time channel was dialed up (seconds) */ 6 170 2 dialup_time fixed bin (71), /* time of present dialup */ 6 171 2 disconnected_proc_command 6 172 fixed bin (12) unsigned unal, 6 173 /* 1 to 5 for -list,-create,-connect,-new_proc,-destroy */ 6 174 2 disconnected_proc_number 6 175 fixed bin (12) unsigned unal, 6 176 /* {N} in -connect {N}, -new_proc {N}, -destroy {N} */ 6 177 2 n_disconnected_procs fixed bin (12) unsigned unal, 6 178 /* number of disconnected processes that user has */ 6 179 2 recent_wakeup_count fixed bin, /* counter to detect channel wakeup loop */ 6 180 2 recent_wakeup_time fixed bin (71), /* time of first wakeup in suspected channel wakeup loop */ 6 181 2 dial_ev_chn fixed bin (71), /* Dialed channels remember master's IPC channel */ 6 182 /**** cdt_mgr_ uses these to maintain the tree of channels. They ****/ 6 183 /**** really belong in the mpxe, but it is full up, and the cdte ****/ 6 184 /**** had the space. */ 6 185 2 threads aligned like channel_threads, 6 186 /**** The use name is that of the user who gave the dial or slave ****/ 6 187 /**** preaccess request. ****/ 6 188 2 user_name unaligned, 6 189 3 person char (20) unaligned, 6 190 3 project char (9) unaligned, 6 191 3 pad char (3) unaligned, /* no tag */ 6 192 2 iocbp ptr unaligned; /* 104 words */ 6 193 6 194 6 195 dcl generic_destination based char (32); /* used to match destinations on dial_out and priv_attach, 6 196* overlays initial_command field for slave and autocall lines */ 6 197 6 198 6 199 6 200 dcl 1 fnpe based (fnpep) aligned, /* an FNP */ 6 201 /* These variables are filled in from the CMF */ 6 202 2 type fixed bin, /* type of this FNP, DN355, DN6670, etc. */ 6 203 2 memory fixed bin, /* amount of memory on this FNP */ 6 204 2 nlslas fixed bin, /* number of lslas on this FNP */ 6 205 2 nhslas fixed bin, /* number of hslas on this FNP */ 6 206 2 service_type fixed bin, /* service type */ 6 207 2 mpx_type fixed bin, /* type of multiplexer on this fnp */ 6 208 2 coreimage char (168), /* pathname of image, maybe in >sl1 */ 6 209 /**** The following are used during system operation to remember the state of the FNP */ 6 210 2 boot_segp ptr, /* ptr to seg used for bootload */ 6 211 2 boot_ev_chan fixed bin (71), /* for ring0 to report crashes and bootload complete */ 6 212 2 mpxe like mpxe, /* standard multiplexer data */ 6 213 2 threads aligned like channel_threads, 6 214 /* same mpx threads as channel */ 6 215 2 pad3 (25) fixed bin; /* pad to 96 words per entry */ 6 216 6 217 /* This structure describes the data necessary to control a multiplexer. 6 218* For FNP's., a copy appears in the fnpe. For communications lines, it 6 219* overlays the initial_command field in the cdte. */ 6 220 6 221 dcl 1 mpxe based (mpxep) aligned, 6 222 2 state fixed bin, /* current state, up, down, loading */ 6 223 2 current_service_type fixed bin, /* usually = service type, unless cdt installation changes it */ 6 224 2 current_mpx_type fixed bin, /* type of multiplexer currently running */ 6 225 2 n_bootloads fixed bin, /* count of load attempts */ 6 226 2 time_initial_load fixed bin (71), /* time this MPX first completed a load */ 6 227 2 time_last_load fixed bin (71), /* time MPX last completed a bootload */ 6 228 2 time_last_crash fixed bin (71), /* time MPX last crashed */ 6 229 2 time_load_start fixed bin (71), /* time current load started */ 6 230 2 last_tbf fixed bin, /* number of minutes this MPX was up last bootload */ 6 231 2 flags unal, 6 232 3 go bit (1), /* start MPX after it loads */ 6 233 3 listening bit (1), /* listen has been done on subchannels */ 6 234 3 check bit (1), /* loaded with check option */ 6 235 3 retry_load bit (1), /* reload if load fails */ 6 236 3 pad1 bit (32), 6 237 2 pad2 (2) fixed bin; /* pad to 16 words */ 6 238 6 239 /* These threads define the tree of multiplexers in the cdt. */ 6 240 /* next_sister and prev_sister link nodes at the same level, ordered */ 6 241 /* by alpha sort order of the channel name. Daughter points to the */ 6 242 /* first child of this node, if any. Daughter count is the number */ 6 243 /* of children, as a consistency check. Mother is a back pointer to */ 6 244 /* the parent, present in all the children, not just the first. */ 6 245 /* threads are cdt indexes. If positive, they index the cdt_entry array */ 6 246 /* in cdt, if negative, they are the negative of an index into the fnp_entry */ 6 247 /* array. If zero, they refer to the top of the non-fnp mpx tree. */ 6 248 6 249 dcl 1 channel_threads aligned based, 6 250 2 next_sister fixed bin unaligned, 6 251 2 prev_sister fixed bin unaligned, 6 252 2 daughter fixed bin unaligned, 6 253 2 mother fixed bin unaligned, /* negative is a fnpx, positive a cdtx */ 6 254 2 pad bit (18) unaligned, 6 255 2 daughter_count fixed bin unaligned; 6 256 6 257 /* Values for cdte.service_type field */ 6 258 6 259 dcl ( 6 260 ANS_SERVICE init (1), /* login or dial */ 6 261 FTP_SERVICE init (2), /* file transfer service */ 6 262 MC_SERVICE init (3), /* message coordinator */ 6 263 SLAVE_SERVICE init (4), /* special channel */ 6 264 DIAL_SERVICE init (5), /* transient state */ 6 265 DIAL_OUT_SERVICE init (6), /* auto call line */ 6 266 MPX_SERVICE init (8), /* ring0 demultiplexed line */ 6 267 TANDD_SERVICE init (9) /* transient state, attached for T & D */ 6 268 ) fixed bin internal static options (constant); 6 269 6 270 /* Values for service type in both cdte and fnpe */ 6 271 6 272 dcl ( 6 273 INACTIVE init (7), /* not to be used, even though configured */ 6 274 ACTIVE init (1) 6 275 ) /* for FNP only, configured and to be used */ 6 276 fixed bin internal static options (constant); 6 277 6 278 /* Value for both cdte.in_use and fnpe.state */ 6 279 6 280 dcl NOT_CONFIGURED fixed bin int static init (-1) options (constant); 6 281 /* was not configured at Multics bootload time */ 6 282 6 283 /* NOTE: an INACTIVE channel can be made active by operator command or CDT installation, 6 284* but a NOT_CONFIGURED channel can not be used until its multiplexer is reloaded */ 6 285 6 286 /* Value for cdte.in_use */ 6 287 6 288 dcl CHANNEL_DELETED fixed bin int static init (-2); 6 289 /* channel deleted by CDT installation */ 6 290 6 291 /* NOTE: a configured channel being deleted by a CDT installation is set to CHANNEL_DELETED. 6 292* multiplexer_mgr_ sets cdte.in_use to NOW_FREE at the next reload of its multiplexer. 6 293* A NOT_CONFIGURED channel is set to NOW_FREE immediately when deleted by a CDT installation. */ 6 294 6 295 6 296 /* Values for mpxe.state field */ 6 297 6 298 dcl ( 6 299 FNP_FREE init (0), /* this fnpe is not used */ 6 300 FNP_UNKNOWN init (1), /* FNP is in some unknown state */ 6 301 FNP_DOWN init (2), /* FNP crashed, not yet reloaded */ 6 302 FNP_BOOT init (3), /* FNP has been booted, but no response yet */ 6 303 FNP_UP init (4) /* FNP is up and running fine */ 6 304 ) fixed bin internal static options (constant); 6 305 6 306 dcl ( 6 307 MPX_FREE init (0), /* this mpxe is not used */ 6 308 MPX_UNKNOWN init (1), /* MPX is in some unknown state */ 6 309 MPX_DOWN init (2), /* MPX crashed, not yet reloaded */ 6 310 MPX_BOOT init (3), /* MPX has been booted, but no response yet */ 6 311 MPX_UP init (4) /* MPX is up and running fine */ 6 312 ) fixed bin internal static options (constant); 6 313 7 1 /* BEGIN INCLUDE FILE ... fnp_types.incl.pl1 */ 7 2 7 3 7 4 7 5 /****^ HISTORY COMMENTS: 7 6* 1) change(88-06-15,Berno), approve(88-07-13,MCR7928), 7 7* audit(88-06-15,Parisek), install(88-07-19,MR12.2-1061): 7 8* Add data needed for the uncp multiplexer (DSA gateway) interface 7 9* implementation. 7 10* END HISTORY COMMENTS */ 7 11 7 12 7 13 /* Values for fnpe.type field */ 7 14 /* 7 15* Created 79 May 14 by Art Beattie by splitting information out from cdt.incl.pl1 7 16* Added in March 1982 - DN7100.fd. 7 17**/ 7 18 7 19 dcl (DN355 init (1), /* a DataNet 355 FNP */ 7 20 DN6600 init (2), /* a DataNet 6600 FNP */ 7 21 DN6670 init (3), /* a Honeywell Bull Network Processor (18x) */ 7 22 DN7100 init (4) /* The DSA Datanet architecture (DN7) */ 7 23 ) fixed bin internal static options (constant); 7 24 7 25 dcl fnp_types (4) char (8) int static options (constant) 7 26 init ("DN355", "DN6600", "DN6670", "DN7100"); 7 27 7 28 dcl fnp_models (4) fixed bin (17) int static options (constant) 7 29 init (355, 6600, 6670, 7100); 7 30 7 31 dcl supported_fnp (4) bit (1) int static options (constant) 7 32 init ("0"b, "0"b, "1"b, "1"b); 7 33 7 34 7 35 /* END INCLUDE FILE ... fnp_types.incl.pl1 */ 6 314 6 315 6 316 /* END INCLUDE FILE ... cdt.incl.pl1 */ 836 837 /* BEGIN INCLUDE FILE...dial_event_message.incl.pl1 */ 8 2 8 3 8 4 /****^ HISTORY COMMENTS: 8 5* 1) change(86-06-30,Coren), approve(86-06-30,MCR7415), 8 6* audit(86-07-02,Margolin), install(86-07-11,MR12.0-1092): 8 7* Initial implementation. 8 8* END HISTORY COMMENTS */ 8 9 8 10 /* This include file describes the event message sent by dial_ctl_ and login servers */ 8 11 8 12 dcl dial_event_message_ptr pointer; 8 13 8 14 dcl 1 dial_event_message aligned based (dial_event_message_ptr), 8 15 2 description char (6) unaligned, 8 16 2 flags unal, 8 17 3 devx_msg bit (1), /* indicates description field contains a devx */ 8 18 3 error_msg bit (1), /* indicates description field contains standard error code */ 8 19 3 ls_msg bit (1), /* indicates message from login server, name in user_message */ 8 20 3 control bit (15); 8 21 8 22 8 23 dcl dial_event_message_handle bit (54) aligned based (dial_event_message_ptr); 8 24 /* overlay of description, contains unique part of user_message handle if any */ 8 25 8 26 8 27 /* possible values for dial_event_message.control */ 8 28 8 29 dcl (JUST_DIALED bit (15) aligned initial ("77770"b3), 8 30 JUST_HUNGUP bit (15) aligned initial ("77771"b3), 8 31 DIALS_ALLOWED bit (15) aligned initial ("77772"b3), 8 32 DIALS_DENIED bit (15) aligned initial ("77773"b3) 8 33 ) internal static options (constant); 8 34 8 35 /* END INCLUDE FILE...dial_event_message.incl.pl1 */ 837 838 /* BEGIN INCLUDE FILE ... dialup_values.incl.pl1 */ 9 2 9 3 /* format: style4 */ 9 4 9 5 /* Values for "cdte.tra_vec" used by dialup_ and others. */ 9 6 9 7 /* Modified by T. Casey April 1976 to add WAIT_NEW_PASSWORD 9 8* - in 1977 and 1978 to add WAIT_(GREETING_MSG DELETE_CHANNEL) 9 9* - and in October 1979 to add WAIT_CONNECT_REQUEST 9 10* Modified by Robert Coren in May 1981 to add TANDD_ATTACH values and 9 11* WAIT_DISCARD_WAKEUP 9 12* Modified by T. Casey, July 1981, for MR9.0, to add WAIT_BEFORE_HANGUP. 9 13* Modified by E. N. Kittlitz, July 1982, to add TTY_MASKED. 9 14**/ 9 15 9 16 /****^ HISTORY COMMENTS: 9 17* 1) change(87-04-20,GDixon), approve(87-07-13,MCR7741), 9 18* audit(87-07-16,Brunelle), install(87-08-04,MR12.1-1056): 9 19* Add constant arrays naming cdte.state, cdte.tra_vec and ute.active values. 9 20* 2) change(87-05-11,GDixon), approve(87-07-13,MCR7741), 9 21* audit(87-07-16,Brunelle), install(87-08-04,MR12.1-1056): 9 22* Add named constants for instance tags. 9 23* END HISTORY COMMENTS */ 9 24 9 25 dcl (WAIT_DIALUP init (1), /* Channel waiting for dialup. */ 9 26 WAIT_ANSWERBACK initial (2), /* WRU sent, waiting for reply */ 9 27 WAIT_LOGIN_LINE init (3), /* Greeting typed, wait for login command. */ 9 28 WAIT_LOGIN_ARGS init (4), /* Want rest of login line */ 9 29 WAIT_OLD_PASSWORD init (5), /* "-cpw" was specified. Wait for old password. */ 9 30 WAIT_PASSWORD init (6), /* Waiting for password. (If "-cpw", repeat of new one.) */ 9 31 WAIT_NEW_PASSWORD init (7), /* "-cpw" was specified. Wait for new password */ 9 32 WAIT_LOGOUT_SIG init (8), /* Channel is hooked up. Wait for logout. */ 9 33 WAIT_LOGOUT init (9), /* A logout has been requested. Wait for process to die */ 9 34 WAIT_LOGOUT_HOLD init (10), /* As above but don't hang up when it dies. */ 9 35 WAIT_DETACH init (11), /* As above but ignore channel afterwards. */ 9 36 WAIT_NEW_PROC init (12), /* As above but make new process and continue. */ 9 37 WAIT_REMOVE init (13), /* As above but completely expunge channel. */ 9 38 WAIT_FIN_PRIV_ATTACH init (14), /* When channel dials up, connect it to user */ 9 39 WAIT_DIAL_RELEASE init (15), /* Waiting for master process to release. */ 9 40 WAIT_DIAL_OUT init (16), /* Waiting for auto call to complete */ 9 41 WAIT_HANGUP init (17), /* Wait for the hangup event to occur for a channel */ 9 42 WAIT_SLAVE_REQUEST init (18), /* Ignore line until someone asks */ 9 43 WAIT_GREETING_MSG init (19), /* Print greeting message and wait for login line */ 9 44 WAIT_DELETE_CHANNEL init (20), /* Channel deleted - mark cdte after process is destroyed */ 9 45 WAIT_CONNECT_REQUEST init (21), /* logged in; awaiting request re disconnected processes */ 9 46 WAIT_TANDD_HANGUP init (22), /* when channel hangs up, proceed with t & d attachment */ 9 47 WAIT_FIN_TANDD_ATTACH init (23), /* when channel dials up, finish t & d attachment */ 9 48 WAIT_DISCARD_WAKEUPS init (24), /* disregard all wakeups on channel */ 9 49 WAIT_BEFORE_HANGUP init (25), /* allow output to print before hanging up */ 9 50 WAIT_DESTROY_REQUEST init (26), /* waiting to continue with destroy request after process has destroyed itself */ 9 51 WAIT_NEW_PROC_REQUEST init (27) /* waiting to continue with new_proc request after process has destroyed itself */ 9 52 ) fixed bin internal static options (constant); 9 53 9 54 dcl TRA_VEC_VALUES (0:13) char (32) aligned int static options (constant) init 9 55 /* names of ute.destroy_flag values */ 9 56 ("", "wait dialup", "wait answerback", "wait login line", /* 0-3 */ 9 57 "wait login args", "wait old password", "wait password", /* 4-6 */ 9 58 "wait new password", "wait logout signal", "wait logout", /* 7-9 */ 9 59 "wait logout hold", "wait detach", "wait new proc", /* 10-12 */ 9 60 "wait remove"); /* -13 */ 9 61 9 62 /* Values for "cdte.state", typewriter state. */ 9 63 9 64 dcl (TTY_MASKED init (-1), /* Terminal channel is there, but masked by MCS */ 9 65 TTY_HUNG init (1), /* Terminal channel is there, but dead. */ 9 66 TTY_KNOWN init (2), /* Channel being "listened" to, awaiting dialup. */ 9 67 TTY_DIALED init (5) /* Channel is dialed up. This is normal state. */ 9 68 ) fixed bin internal static options (constant); 9 69 9 70 dcl STATE_VALUES (-1:5) char (15) aligned int static options (constant) init 9 71 /* names of cdte.state values */ 9 72 ("masked", "dead", "hung up", "listening", "", "", "dialed up"); 9 73 9 74 /* Values for "cdte.in_use" and "ate.active" */ 9 75 9 76 dcl (NOW_FREE init (0), /* Entry is empty. */ 9 77 NOW_HUNG_UP init (1), /* Entry is usable but tty is hung up. */ 9 78 NOW_LISTENING init (2), /* Entry is waiting for phone call. */ 9 79 NOW_DIALED init (3), /* Entry is connected but login not complete. */ 9 80 NOW_LOGGED_IN init (4), /* Entry is logged in but no process. */ 9 81 NOW_HAS_PROCESS init (5), /* Entry has a valid process. */ 9 82 NOW_DIALING init (6), /* Entry (auto_call line) is dialing */ 9 83 NOW_DIALED_OUT init (7) /* Entry (auto_call line) is in use */ 9 84 ) fixed bin internal static options (constant); 9 85 9 86 dcl ACTIVE_VALUES (0:5) char (18) aligned int static options (constant) init 9 87 /* names of ute.active values */ 9 88 ("free", "hung-up", "listening", "dialed", "logged in, no proc", "logged in & proc"); 9 89 9 90 9 91 /**** Values for ute.tag */ 9 92 9 93 dcl (TAG_INTERACTIVE init("a"), 9 94 TAG_UFT init("f"), 9 95 TAG_ABSENTEE init("m"), 9 96 TAG_PROXY init("p"), 9 97 TAG_DAEMON init("z") 9 98 ) char(1) int static options(constant); 9 99 9 100 9 101 /**** Following are constants used to indicate to the process termination 9 102* handler the reason for the process termination. They are used by 9 103* uc_proc_term_handler_, as well as uc_ls_new_proc_request_ and 9 104* uc_ls_destroy_request_. */ 9 105 9 106 dcl ( 9 107 PT_FPE initial (1), 9 108 PT_LOGOUT initial (4), 9 109 PT_NEW_PROC_AUTH initial (13), 9 110 PT_HANGUP initial (20), 9 111 PT_SHUTDOWN initial (21), 9 112 PT_BUMP initial (22), 9 113 PT_ALARM initial (23), 9 114 PT_DETACH initial (24), 9 115 PT_UNBUMP initial (25), 9 116 PT_OPERATOR_TERMINATE initial (27), 9 117 PT_DESTROY_REQUEST initial (30), 9 118 PT_NEW_PROC_REQUEST initial (31) 9 119 ) fixed bin (17) internal static options (constant); 9 120 9 121 /**** Values for ute.preempted: 9 122* -1 user unbumped after term signal sent 9 123* 0 user unbumped; ignore alarm___ 9 124* 1 value internally used in load_ctl_ 9 125* 2 user bumped; when alarm___ comes in, send term signal 9 126* 3 term signal sent; destroy process if termsgnl, alarm___, or cpulimit 9 127* signals come in 9 128* 4 user bumped; process sick, so destroy without sending term signal 9 129* 5 trm_ signal sent, termsgnl received; (if still 3, we never got the 9 130* termsgnl). */ 9 131 9 132 dcl ( 9 133 PREEMPT_UNBUMP initial (-1), 9 134 PREEMPT_UNBUMP_IGNORE_ALARM initial (0), 9 135 PREEMPT_LOAD_CTL initial (1), 9 136 PREEMPT_BUMPED initial (2), 9 137 PREEMPT_TERM_SENT initial (3), 9 138 PREEMPT_BUMPED_NO_TERM initial (4), 9 139 PREEMPT_TERMSGNL_RECEIVED initial (5) 9 140 ) fixed bin (17) internal static options(constant); 9 141 9 142 dcl PREEMPT_VALUES (-1:5) char(28) varying int static options(constant) init( 9 143 "unbumped", 9 144 "not bumped, ignore alarm___", 9 145 "load_ctl_", 9 146 "bumped", 9 147 "bumped, trm_ sent", 9 148 "bumped without trm_", 9 149 "bumped, termsgnl received"); 9 150 9 151 /* END INCLUDE FILE ... dialup_values.incl.pl1 */ 838 839 /* BEGIN INCLUDE FILE event_call_info.incl.pl1 */ 10 2 10 3 /* T. Casey, May 1978 */ 10 4 10 5 dcl event_call_info_ptr ptr; 10 6 10 7 dcl 1 event_call_info aligned based (event_call_info_ptr), /* argument structure passed to event call procedure */ 10 8 2 channel_id fixed bin (71), /* event channel on which wakeup occurred */ 10 9 2 message fixed bin (71), /* 72 bits of information passed by sender of wakeup */ 10 10 2 sender bit (36), /* process id of sender */ 10 11 2 origin, 10 12 3 dev_signal bit (18) unaligned, /* "1"b if device signal */ 10 13 3 ring fixed bin (17) unaligned, /* ring from which sent */ 10 14 2 data_ptr ptr; /* ptr given to dcl_event_call_channel */ 10 15 10 16 /* END INCLUDE FILE event_call_info.incl.pl1 */ 839 840 /* --------------- BEGIN include file iox_dcls.incl.pl1 --------------- */ 11 2 11 3 /* Written 05/04/78 by C. D. Tavares */ 11 4 /* Fixed declaration of iox_$find_iocb_n 05/07/80 by R. Holmstedt */ 11 5 /* Modified 5/83 by S. Krupp to add declarations for: iox_$open_file, 11 6* iox_$close_file, iox_$detach and iox_$attach_loud entries. */ 11 7 11 8 dcl iox_$attach_name entry (char (*), pointer, char (*), pointer, fixed bin (35)), 11 9 iox_$attach_ptr entry (pointer, char (*), pointer, fixed bin (35)), 11 10 iox_$close entry (pointer, fixed bin (35)), 11 11 iox_$control entry (pointer, char (*), pointer, fixed bin (35)), 11 12 iox_$delete_record entry (pointer, fixed bin (35)), 11 13 iox_$destroy_iocb entry (pointer, fixed bin (35)), 11 14 iox_$detach_iocb entry (pointer, fixed bin (35)), 11 15 iox_$err_not_attached entry options (variable), 11 16 iox_$err_not_closed entry options (variable), 11 17 iox_$err_no_operation entry options (variable), 11 18 iox_$err_not_open entry options (variable), 11 19 iox_$find_iocb entry (char (*), pointer, fixed bin (35)), 11 20 iox_$find_iocb_n entry (fixed bin, ptr, fixed bin(35)), 11 21 iox_$get_chars entry (pointer, pointer, fixed bin (21), fixed bin (21), fixed bin (35)), 11 22 iox_$get_line entry (pointer, pointer, fixed bin (21), fixed bin (21), fixed bin (35)), 11 23 iox_$look_iocb entry (char (*), pointer, fixed bin (35)), 11 24 iox_$modes entry (pointer, char (*), char (*), fixed bin (35)), 11 25 iox_$move_attach entry (pointer, pointer, fixed bin (35)), 11 26 iox_$open entry (pointer, fixed bin, bit (1) aligned, fixed bin (35)), 11 27 iox_$position entry (pointer, fixed bin, fixed bin (21), fixed bin (35)), 11 28 iox_$propagate entry (pointer), 11 29 iox_$put_chars entry (pointer, pointer, fixed bin (21), fixed bin (35)), 11 30 iox_$read_key entry (pointer, char (256) varying, fixed bin (21), fixed bin (35)), 11 31 iox_$read_length entry (pointer, fixed bin (21), fixed bin (35)), 11 32 iox_$read_record entry (pointer, pointer, fixed bin (21), fixed bin (21), fixed bin (35)), 11 33 iox_$rewrite_record entry (pointer, pointer, fixed bin (21), fixed bin (35)), 11 34 iox_$seek_key entry (pointer, char (256) varying, fixed bin (21), fixed bin (35)), 11 35 iox_$write_record entry (pointer, pointer, fixed bin (21), fixed bin (35)), 11 36 iox_$open_file entry(ptr, fixed bin, char(*), bit(1) aligned, fixed bin(35)), 11 37 iox_$close_file entry(ptr, char(*), fixed bin(35)), 11 38 iox_$detach entry(ptr, char(*), fixed bin(35)), 11 39 iox_$attach_loud entry(ptr, char(*), ptr, fixed bin(35)); 11 40 11 41 dcl (iox_$user_output, 11 42 iox_$user_input, 11 43 iox_$user_io, 11 44 iox_$error_output) external static pointer; 11 45 11 46 /* ---------------- END include file iox_dcls.incl.pl1 ---------------- */ 840 841 /* BEGIN INCLUDE FILE ... mc_anstbl.incl.pl1 */ 12 2 12 3 12 4 /****^ HISTORY COMMENTS: 12 5* 1) change(85-12-19,MSharpe), approve(87-05-25,MCR7690), 12 6* audit(87-03-30,GDixon), install(87-08-04,MR12.1-1056): 12 7* Added the pending and virtual flags and virtual_tty_name to mc_ate; 12 8* changed mc_ate.tty_name to mc_ate.real_tty_name; added mc_ate.ls_procid, 12 9* mc_ate.ls_term_ev_chn, mc_ate.ls_resp_ev_chn, mc_ate.ls_handle. 12 10* 2) change(87-02-04,GDixon), approve(87-05-25,MCR7690), 12 11* audit(87-06-01,Parisek), install(87-08-04,MR12.1-1056): 12 12* Add mc_ate.vchn_requires_accept in support of virtual channels. Explicitly 12 13* declare implicit pad fields which the compile adds for element alignment 12 14* purposes. Declare mc_ansp and mc_atep, on which major structures are 12 15* based, rather than depending upon includers do to so. 12 16* 3) change(87-03-27,Parisek), approve(87-05-25,MCR7690), 12 17* audit(87-06-11,GDixon), install(87-08-04,MR12.1-1056): 12 18* Added the dsa_ring_number element to provide a constant for determining 12 19* the DSA ring. 12 20* END HISTORY COMMENTS */ 12 21 12 22 12 23 /* format: style3,idind30 */ 12 24 12 25 dcl 1 mc_anstbl based (mc_ansp) aligned, 12 26 /* Structure of answer table */ 12 27 2 max_size fixed bin, /* max number of entries table can grow */ 12 28 2 current_size fixed bin, /* actual size of table (in entries) */ 12 29 2 mc_procid bit (36), /* process ID of message coordinator */ 12 30 2 sysdir char (168), /* name of main system control directory */ 12 31 2 pad_ptrs bit (36), 12 32 2 mrtp ptr, 12 33 2 vconsp ptr, 12 34 2 cons_cont_proc entry, /* mc_tty_ */ 12 35 2 con_rec, /* Data for console recovery. */ 12 36 3 mc_ate_ptr ptr, /* Pts to recovery device. */ 12 37 3 ec_id fixed bin (71), /* Recovery event chan. */ 12 38 3 seq_num fixed bin (35), /* Syserr sequence number. */ 12 39 3 offset bit (18), /* Log entry offset. */ 12 40 3 flags, 12 41 ( 4 enabled bit (1), /* ON => recovery possible. */ 12 42 4 active bit (1), 12 43 4 pad_flags bit (16) 12 44 ) unaligned, /* ON => recovery going on. */ 12 45 2 n_sources fixed bin, /* number of communicating sources */ 12 46 2 max_sources fixed bin, /* maximum number of sources allowed */ 12 47 2 current_time fixed bin (71), /* Time of last transaction */ 12 48 2 trace bit (1) aligned, 12 49 2 dsa_ring_number fixed bin, /* DSA ring number */ 12 50 2 pad_entries (30) bit (36) aligned, 12 51 2 entry (0 refer (mc_anstbl.current_size)) aligned like mc_ate, 12 52 mc_ansp ptr; 12 53 12 54 dcl 1 mc_ate based (mc_atep) aligned, 12 55 /* declaration of a single answer table entry */ 12 56 2 flags aligned, 12 57 3 virtual bit (1) unaligned, /* 1 => login -vchn XXX */ 12 58 3 pending bit (1) unaligned, /* 1 => pending entry created for DSA channel 12 59* since we can't keep info in cdte for it */ 12 60 3 active bit (1) unaligned, 12 61 3 the_system_console bit (1) unaligned, /* otw_/ocd_ */ 12 62 3 a_system_console bit (1) unaligned, /* Not yet implemented -- a random opc through a */ 12 63 /* nonexistent I/O module */ 12 64 3 pad001 bit (1) unaligned, 12 65 3 signed_on bit (1) unaligned, 12 66 3 reply_restricted bit (1) unaligned, 12 67 3 broadcast bit (1) unaligned, 12 68 3 broadcast_all bit (1) unaligned, 12 69 3 vchn_requires_accept bit (1) unaligned, 12 70 3 pad_flags bit (25) unaligned, 12 71 2 virtual_tty_name char (32) unaligned, 12 72 2 real_tty_name char (32) unaligned, 12 73 2 pad_ptrs bit (36), 12 74 2 cdtep pointer, /* we get info from cdt */ 12 75 2 iocb pointer, /* do I/O here */ 12 76 2 sci_ptr pointer, 12 77 2 tra_vec fixed bin, 12 78 2 restrict_reply char (32), /* Source name. if "", everybody. */ 12 79 /* Broadcasting information. */ 12 80 2 n_casts fixed bin, /* If flag is 1 */ 12 81 2 cast (10) char (32), /* If flag is 1, list of consoles. */ 12 82 2 oper_info, /* for oper assigned this console... */ 12 83 3 personid char (32), 12 84 3 last_input_time fixed bin (71), /* time of last input on this console... */ 12 85 2 queue_ptr ptr, 12 86 2 queue_event fixed bin (71), 12 87 2 event fixed binary (71), /* name of event call channel associated with TTY */ 12 88 2 ls_procid bit (36), /* ID of login_server who will wake us up with connect 12 89* and disconnect -- used only for network channels */ 12 90 2 pad_ev_chn bit (36), 12 91 2 ls_term_ev_chn fixed bin (71), /* event channel to send terminate response to ls */ 12 92 2 ls_resp_ev_chn fixed bin (71), /* event channel to send operator response to ls */ 12 93 2 ls_handle bit (72), /* login server handle for this connection */ 12 94 2 authority, 12 95 3 privilege (36) bit (1) unaligned, 12 96 2 control, 12 97 3 inhibit bit (1) unal, 12 98 3 output_wait bit (1) unal, 12 99 3 output_pending bit (1) unal, 12 100 3 pad_control bit (33) unal, 12 101 mc_atep ptr; 12 102 12 103 declare ( 12 104 MC_WAIT_DIALUP init (1), 12 105 MC_WAIT_ANSWERBACK init (2), 12 106 MC_WAIT_READY init (3), 12 107 MC_WAIT_COMMAND init (4) 12 108 ) fixed bin int static options (constant); 12 109 12 110 /* END INCLUDE FILE ... mc_anstbl.incl.pl1 */ 841 842 /* BEGIN INCLUDE FILE ... net_event_message.incl.pl1 */ 13 2 13 3 /****^ HISTORY COMMENTS: 13 4* 1) change(86-07-30,Kissel), approve(86-07-30,MCR7475), audit(86-08-04,Coren), 13 5* install(86-10-09,MR12.0-1181): 13 6* This include file was formerly tty_event_message.incl.pl1. It has been 13 7* updated with different fields and new constants, and renamed to 13 8* net_event_message.incl.pl1 13 9* 2) change(87-04-20,GDixon), approve(87-07-13,MCR7694), 13 10* audit(87-06-24,Hartogs), install(87-08-04,MR12.1-1056): 13 11* Add NETWORK_TYPE_VALUES array. 13 12* END HISTORY COMMENTS */ 13 13 13 14 /* describes event message passed with wakeups from the tty DIM */ 13 15 /* Created 5/24/76 by Robert S. Coren */ 13 16 13 17 /* format: style3,linecom,ifthenstmt,indthenelse,^indnoniterdo,indnoniterend,initcol3,dclind5,idind32 */ 13 18 13 19 dcl net_event_message_arg fixed bin (71); /* For calling IPC */ 13 20 dcl NET_EVENT_MESSAGE_VERSION_1 bit (2) internal static options (constant) init ("10"b); 13 21 13 22 dcl 1 net_event_message aligned based (addr (net_event_message_arg)), 13 23 2 version bit (2) unaligned, /* Currently version 1 */ 13 24 2 reason bit (16) unaligned, /* Additional info about the event */ 13 25 2 pad bit (6) unaligned, /* Must be zero */ 13 26 2 network_type fixed bin (4) unsigned unaligned, 13 27 /* See below for constants */ 13 28 2 type fixed bin (8) unsigned unaligned, 13 29 /* Type of interrupt, see below */ 13 30 2 handle fixed bin (35) aligned;/* Caller's handle (devx for MCS, handle for DSA) */ 13 31 13 32 /* Network type constants */ 13 33 13 34 dcl MCS_NETWORK_TYPE fixed bin (4) unsigned internal static options (constant) init (0); 13 35 dcl DSA_NETWORK_TYPE fixed bin (4) unsigned internal static options (constant) init (1); 13 36 dcl MOWSE_NETWORK_TYPE fixed bin (4) unsigned internal static options (constant) init (2); 13 37 13 38 dcl NETWORK_TYPE_VALUES (0:2) char(8) varying int static options(constant) init( 13 39 "MCS", 13 40 "DSA", 13 41 "MOWSE"); 13 42 13 43 13 44 /* MCS event message type constants */ 13 45 13 46 dcl MAX_MCS_EVENT_MSG_TYPE fixed bin internal static options (constant) init (8); 13 47 13 48 dcl MCS_UNSPECIFIED_MSG fixed bin internal static options (constant) init (0); 13 49 /* used for "start" order, etc. */ 13 50 dcl MCS_DIALUP_MSG fixed bin internal static options (constant) init (1); 13 51 /* dialup */ 13 52 dcl MCS_HANGUP_MSG fixed bin internal static options (constant) init (2); 13 53 /* hangup */ 13 54 dcl MCS_DIALOUT_MSG fixed bin internal static options (constant) init (3); 13 55 /* dialout status returned */ 13 56 dcl MCS_QUIT_MSG fixed bin internal static options (constant) init (4); 13 57 /* quit */ 13 58 dcl MCS_READ_MSG fixed bin internal static options (constant) init (5); 13 59 /* input arrived */ 13 60 dcl MCS_WRITE_MSG fixed bin internal static options (constant) init (6); 13 61 /* output completed */ 13 62 dcl MCS_LINE_STATUS_MSG fixed bin internal static options (constant) init (7); 13 63 /* control tables sent status */ 13 64 dcl MCS_MASKED_MSG fixed bin internal static options (constant) init (8); 13 65 /* channel masked by FNP */ 13 66 13 67 dcl MCS_MSG_TYPE_TO_PNAME (0:8) char (20) internal static options (constant) init ("unspecified", 13 68 /* 0 */ 13 69 "dialup", /* 1 */ 13 70 "hangup", /* 2 */ 13 71 "dialout status", /* 3 */ 13 72 "quit", /* 4 */ 13 73 "read", /* 5 */ 13 74 "write", /* 6 */ 13 75 "line status", /* 7 */ 13 76 "masked"); /* 8 */ 13 77 13 78 /* DSA event message type constants */ 13 79 13 80 dcl MAX_DSA_EVENT_MSG_TYPE fixed bin internal static options (constant) init (19); 13 81 13 82 dcl DSA_UNSPECIFIED_MSG fixed bin (8) uns internal static options (constant) init (0); 13 83 dcl DSA_ATTENTION_MSG fixed bin (8) uns internal static options (constant) init (1); 13 84 dcl DSA_DATA_ATTENTION_MSG fixed bin (8) uns internal static options (constant) init (2); 13 85 dcl DSA_DEMAND_RELEASE_SRU_MSG fixed bin (8) uns internal static options (constant) init (3); 13 86 dcl DSA_DEMAND_TURN_MSG fixed bin (8) uns internal static options (constant) init (4); 13 87 dcl DSA_DEMAND_TURN_ACK_MSG fixed bin (8) uns internal static options (constant) init (5); 13 88 dcl DSA_PURGE_MSG fixed bin (8) uns internal static options (constant) init (6); 13 89 dcl DSA_RECOVER_MSG fixed bin (8) uns internal static options (constant) init (7); 13 90 dcl DSA_RECOVER_ACK_MSG fixed bin (8) uns internal static options (constant) init (8); 13 91 dcl DSA_RELEASE_SRU_MSG fixed bin (8) uns internal static options (constant) init (9); 13 92 dcl DSA_RESUME_MSG fixed bin (8) uns internal static options (constant) init (10); 13 93 dcl DSA_RESUME_ACK_MSG fixed bin (8) uns internal static options (constant) init (11); 13 94 dcl DSA_SUSPEND_MSG fixed bin (8) uns internal static options (constant) init (12); 13 95 dcl DSA_SUSPEND_ACK_MSG fixed bin (8) uns internal static options (constant) init (13); 13 96 dcl DSA_TERM_ABNORMAL_MSG fixed bin (8) uns internal static options (constant) init (14); 13 97 dcl DSA_ESTABLISHMENT_MSG fixed bin (8) uns internal static options (constant) init (15); 13 98 dcl DSA_TERMINATED_MSG fixed bin (8) uns internal static options (constant) init (16); 13 99 dcl DSA_USER_UNASSIGN_MSG fixed bin (8) uns internal static options (constant) init (17); 13 100 dcl DSA_DATA_INPUT_MSG fixed bin (8) uns internal static options (constant) init (18); 13 101 dcl DSA_DATA_OUTPUT_MSG fixed bin (8) uns internal static options (constant) init (19); 13 102 13 103 dcl DSA_MSG_TYPE_TO_PNAME (0:19) char (20) internal static options (constant) init ("unspecified", 13 104 /* 0 */ 13 105 "attention", /* 1 */ 13 106 "data_attention", /* 2 */ 13 107 "demand_release_sru", /* 3 */ 13 108 "demand_turn", /* 4 */ 13 109 "demand_turn_ack", /* 5 */ 13 110 "purge", /* 6 */ 13 111 "recover", /* 7 */ 13 112 "recover_ack", /* 8 */ 13 113 "release_sru", /* 9 */ 13 114 "resume", /* 10 */ 13 115 "resume_ack", /* 11 */ 13 116 "suspend", /* 12 */ 13 117 "suspend_ack", /* 13 */ 13 118 "terminate_abnormal", /* 14 */ 13 119 "establishment", /* 15 */ 13 120 "terminated", /* 16 */ 13 121 "user_unassign", /* 17 */ 13 122 "data input", /* 18 */ 13 123 "data output"); /* 19 */ 13 124 13 125 /* END INCLUDE FILE ... net_event_message.incl.pl1 */ 842 843 /* BEGIN: sc_stat_.incl.pl1 * * * * * */ 14 2 14 3 14 4 /****^ HISTORY COMMENTS: 14 5* 1) change(87-02-04,GDixon), approve(87-05-25,MCR7690), 14 6* audit(87-06-02,Parisek), install(87-08-04,MR12.1-1056): 14 7* Add sc_stat_$vchn_requires_accept in support of DSA virtual channels. 14 8* 2) change(87-02-04,GDixon), approve(87-05-25,MCR7680), 14 9* audit(87-06-02,Parisek), install(87-08-04,MR12.1-1056): 14 10* Reorganized by type of data to improve readability. 14 11* END HISTORY COMMENTS */ 14 12 14 13 14 14 /* ACCESS NAMES */ 14 15 dcl ( 14 16 sc_stat_$exec_access_name, /* check MC access in an exec request */ 14 17 sc_stat_$unidentified_access_name /* check access if no one is logged in. */ 14 18 ) char(32) ext static; 14 19 14 20 /* PATHNAMES */ 14 21 dcl ( 14 22 sc_stat_$info_dir, /* admin info segs directory */ 14 23 sc_stat_$log_dir, /* as log segs directory */ 14 24 sc_stat_$mc_acs_dir, /* message coordinator ACS segments (.mcacs) dir */ 14 25 sc_stat_$sysdir /* system control directory */ 14 26 ) char(168) ext static; 14 27 14 28 /* OTHER CHAR STRINGS */ 14 29 dcl ( 14 30 sc_stat_$master_channel /* Master TTY channel. */ 14 31 ) char(6) aligned ext static; 14 32 14 33 /* LABELS */ 14 34 dcl ( 14 35 sc_stat_$admin_listener_exit_label, /* GO here to exit admin mode. Set to */ 14 36 /* ssu_$null_label unless */ 14 37 /* admin_listener is active. */ 14 38 sc_stat_$master_abort_label, /* GO here after fault that is not */ 14 39 /* attributable to a particular */ 14 40 /* command. */ 14 41 sc_stat_$system_shutdown_label /* GO here to shut down system */ 14 42 ) label variable ext static; 14 43 14 44 /* POINTERS TO */ 14 45 dcl ( 14 46 sc_stat_$admin_log_iocb, /* IOCB for admin log */ 14 47 sc_stat_$admin_log_write_ptr, /* DATA for log_write_ calls on the admin log */ 14 48 sc_stat_$admin_sci_ptr, /* DATA ssu_ for terminal currently executing */ 14 49 sc_stat_$as_log_write_ptr, /* DATA for log_write_ calls on as log, used */ 14 50 /* by sys_log_. */ 14 51 sc_stat_$initzer_ttyp, /* ENT mc_ate for initializer terminal */ 14 52 sc_stat_$master_iocb, /* IOCB for "master_i/o" */ 14 53 sc_stat_$master_sci_ptr, /* DATA ssu_ (permanent) for system control */ 14 54 sc_stat_$mc_ansp, /* HEAD of mc_anstbl */ 14 55 sc_stat_$mc_iocb, /* IOCB ptr for "mc_i/o" */ 14 56 sc_stat_$sv1_iocb, /* IOCB ptr for "severity1" */ 14 57 sc_stat_$sv2_iocb, /* IOCB ptr for "severity2" */ 14 58 sc_stat_$sv3_iocb /* IOCB ptr for "severity3" */ 14 59 ) ptr ext static; 14 60 14 61 /* SWITCHES */ 14 62 dcl ( 14 63 sc_stat_$Go, /* TRUE after answering service is listening*/ 14 64 sc_stat_$Go_typed, /* TRUE immediately after 'go' is typed */ 14 65 sc_stat_$Multics, /* TRUE after answering service started */ 14 66 sc_stat_$Multics_typed, /* TRUE immediately after 'mult' is typed */ 14 67 sc_stat_$Star_typed, /* TRUE if 'mult' and 'go' came from 'star' */ 14 68 sc_stat_$admin_listener_switch, /* TRUE if in the admin listener */ 14 69 sc_stat_$did_part1, /* TRUE if part 1 of system startup ec done */ 14 70 sc_stat_$did_part2, /* TRUE if part 2 of system startup ec done */ 14 71 sc_stat_$did_part3, /* TRUE if part 3 of system startup ec done */ 14 72 sc_stat_$mc_is_on, /* TRUE if message coordinator running */ 14 73 sc_stat_$no_operator_login, /* TRUE if operator login not required, or */ 14 74 /* if PNT not yet available. */ 14 75 sc_stat_$shutdown_typed, /* TRUE if 'shutdown' command in progress. */ 14 76 sc_stat_$test_mode, /* TRUE if in test environment */ 14 77 sc_stat_$vchn_requires_accept /* TRUE if vchn may only be used if accepted*/ 14 78 /* by operator signed on system console*/ 14 79 ) bit(1) aligned ext static; 14 80 14 81 14 82 /* END OF: sc_stat_.incl.pl1 * * * * * */ 843 844 /* BEGIN: sc_subsystem_info_.incl.pl1 * * * * * */ 15 2 15 3 /* format:style3,idind30 */ 15 4 15 5 /* Created 1984-10-24 BIM */ 15 6 /* Modified 1985-01-07, BIM: access control flags that track admin and X */ 15 7 /* Modified 1985-02-18, E. Swenson to save away abort_line procedure. */ 15 8 15 9 15 10 /****^ HISTORY COMMENTS: 15 11* 1) change(87-02-17,GDixon), approve(87-07-03,MCR7680), 15 12* audit(87-07-13,Parisek), install(87-08-04,MR12.1-1056): 15 13* Correct formatting problems. Add sc_subsystem_info.flags.dont_mask_calls 15 14* switch. 15 15* 2) change(87-07-03,GDixon), approve(87-07-03,MCR7680), 15 16* audit(87-07-13,Parisek), install(87-08-04,MR12.1-1056): 15 17* Removed dont_mask_calls flag. It is no longer needed to correctly perform 15 18* masking on a per-request basis. 15 19* END HISTORY COMMENTS */ 15 20 15 21 15 22 declare sc_subsystem_info_ptr pointer; 15 23 declare 1 sc_subsystem_info aligned based (sc_subsystem_info_ptr), 15 24 2 restriction_flags bit (36) aligned, /* copied from mc atep or fabricated */ 15 25 2 flags aligned, 15 26 3 no_real_tty bit (1) unaligned, /* for sc_admin_command_ */ 15 27 3 print_ready bit (1) unal, /* on for all except the system console, */ 15 28 /* instructs sc_process_command_line_ to deal */ 15 29 /* with the prompt */ 15 30 3 the_system_console bit (1) unal, /* syserr messages are printed here (but console */ 15 31 /* recover doesn't try to fix this) copied here */ 15 32 /* from the mc_ate to save other looking in there*/ 15 33 3 printer_offed bit (1) unal, /* suppress logging */ 15 34 3 pad bit (32) unaligned, 15 35 2 source_name char (32) unaligned, 15 36 2 area_ptr pointer, 15 37 2 mc_atep pointer, /* needed to play with attachments */ 15 38 2 real_iocb pointer, /* for sc_signal_io_handler_ */ 15 39 2 hangup_entry entry (pointer) variable, 15 40 /* called on io_no_permission. */ 15 41 2 real_execute_line entry (ptr, ptr, fixed bin (21), fixed bin (35)), 15 42 2 real_locate_request entry (ptr, char (*), ptr, fixed bin (35)), 15 43 2 access_control_name char (32) unaligned, 15 44 2 real_invoke_request entry, /* since MR11 ssu_ lacks the ability to abort a */ 15 45 /* single request, we have an invoke_request that*/ 15 46 /* handles a condition to unwind the request */ 15 47 2 abort_request_label label, /* go here (nonlocally) to unwind a single request */ 15 48 2 real_abort_line entry options (variable); 15 49 15 50 declare sc_ss_area area based (sc_subsystem_info.area_ptr); 15 51 15 52 /* The following defines the user flags for the request table. */ 15 53 15 54 declare sc_rf_ptr pointer; 15 55 declare 1 sc_request_flags unaligned based (sc_rf_ptr), 15 56 2 dont_parse_arguments bit, /* reply, intercom */ 15 57 2 obsolete bit, /* warn opr to not use it */ 15 58 2 dont_mask_calls bit, /* this runs without masking ev calls */ 15 59 2 requires_as bit, /* not before AS */ 15 60 2 requires_no_as bit, /* only before AS */ 15 61 2 complete_disks_first bit, /* try to mount disks */ 15 62 2 no_login_needed bit, /* sign_on */ 15 63 2 pad bit (5), 15 64 2 restriction_type fixed bin (6) unsigned; 15 65 /* index into restriction flag string */ 15 66 15 67 15 68 /* END OF: sc_subsystem_info_.incl.pl1 * * * * * */ 844 845 /* BEGIN INCLUDE FILE ... set_term_type_info.incl.pl1 */ 16 2 /* Created 7/18/77 by Robert Coren */ 16 3 /* Defines info structure for set_term_type order */ 16 4 16 5 dcl stti_version_1 fixed bin int static options (constant) init (1); 16 6 dcl sttip ptr; 16 7 16 8 dcl 1 set_term_type_info aligned based (sttip), 16 9 2 version fixed bin, 16 10 2 name char (32) unal, 16 11 2 flags unal, 16 12 3 send_initial_string bit (1), 16 13 3 set_modes bit (1), 16 14 3 ignore_line_type bit (1), 16 15 3 mbz bit (33); 16 16 16 17 /* END INCLUDE FILE ... set_term_type_info.incl.pl1 */ 845 846 /* BEGIN INCLUDE FILE sys_log_constants.incl.pl1 ... 82-09-24 E. N. Kittlitz */ 17 2 17 3 17 4 /****^ HISTORY COMMENTS: 17 5* 1) change(87-04-22,GDixon), approve(87-06-10,MCR7708), 17 6* audit(87-06-02,Parisek), install(87-08-04,MR12.1-1056): 17 7* Added sl_info structure and associated named constants for use in calling 17 8* sys_log_$general. 17 9* END HISTORY COMMENTS */ 17 10 17 11 17 12 /* format: style4 */ 17 13 17 14 dcl ( 17 15 SL_TYPE_CRASH init (-3), /* type message with banner & kill system */ 17 16 SL_TYPE_BEEP init (-2), /* type message with banner */ 17 17 SL_TYPE init (-1), /* type message */ 17 18 SL_LOG_SILENT init (0), /* log message */ 17 19 SL_LOG init (1), /* log & type message */ 17 20 SL_LOG_BEEP init (2), /* log & type message with banner */ 17 21 SL_LOG_CRASH init (3) /* log & type message with banner & kill system */ 17 22 ) fixed bin internal static options (constant); 17 23 17 24 dcl 1 sl_info aligned automatic, 17 25 2 version char(8), /* structure version */ 17 26 2 arg_list_ptr ptr, /* arg_list with values */ 17 27 2 loc, 17 28 3 (mode, severity, code, caller, data, class, ioa_msg) fixed bin, 17 29 /* These flags control where the corresponding data item is found.*/ 17 30 /* -1: data appears in the corresponding structure element below */ 17 31 /* 0: data is not present anywhere */ 17 32 /* +N: data is Nth item in argument list pointed to by */ 17 33 /* sl_info.arg_list_ptr. Upon return, data copied into */ 17 34 /* corresponding structure element. */ 17 35 /* if data = +N: */ 17 36 /* argN is data_ptr, argN+1 is data_len */ 17 37 /* if ioa_msg = +N: */ 17 38 /* argN+1, ... argLAST are arguments substituted into the */ 17 39 /* ioa_msg control string. The formatted msg is returned. */ 17 40 2 flags, 17 41 3 ioa_msg_is_error_code bit(1) unal, /* ioa_ctl is error code. */ 17 42 3 flags_pad bit(35) unal, 17 43 2 mode fixed bin, /* as-mode, command-mode */ 17 44 2 severity fixed bin, /* error severity */ 17 45 2 code fixed bin(35), /* error table code */ 17 46 2 caller char(65) varying, /* caller refname$entryname*/ 17 47 2 data, /* binary data ptr/length */ 17 48 3 data_ptr ptr, 17 49 3 data_lth fixed bin(21), 17 50 2 class char(10) varying, /* binary data class */ 17 51 2 ioa_msg char(500) varying; /* formatted message text */ 17 52 17 53 /* * * * * * * * * * * * * * * * * * * * * * * * * * */ 17 54 /* */ 17 55 /* If data values (eg, sl_info.caller) are passed in the argument list, */ 17 56 /* their data types should be as shown in the structure above, except that */ 17 57 /* character strings should be char(*) nonvarying. */ 17 58 /* */ 17 59 /* * * * * * * * * * * * * * * * * * * * * * * * * * */ 17 60 17 61 /* value for sl_info.version */ 17 62 dcl SL_INFO_version_1 char (8) int static options(constant) init("sl_info1"); 17 63 17 64 /* values for sl_info.mode */ 17 65 dcl (SL_INFO_as_mode init(1), 17 66 SL_INFO_command_mode init(2)) fixed bin int static options(constant); 17 67 17 68 /* values for sl_info.loc.(severity code caller data class ioa_ctl arg) */ 17 69 dcl (SL_INFO_arg_given_in_structure init(-1), 17 70 SL_INFO_arg_not_given init(0)) fixed bin int static options(constant); 17 71 17 72 17 73 /* * * * * * * * * * * * * * * * * * * * * * * * * * */ 17 74 /* */ 17 75 /* The following static structures are commonly used in the Login Server */ 17 76 /* user control software. */ 17 77 /* */ 17 78 /* * * * * * * * * * * * * * * * * * * * * * * * * * */ 17 79 17 80 /* Syntax: call Abort (severity, code, ioa_ctl, args); */ 17 81 17 82 dcl 1 sl_info_sev_code_msg aligned int static options(constant), 17 83 2 version char(8) init ("sl_info1"), 17 84 2 arg_list_ptr ptr init (null), 17 85 2 loc, 17 86 3 (mode init (-1), 17 87 severity init ( 1), 17 88 code init ( 2), 17 89 caller init (-1), 17 90 data init ( 0), 17 91 class init ( 0), 17 92 ioa_msg init ( 3)) fixed bin, 17 93 2 flags, 17 94 3 ioa_msg_is_error_code bit(1) unal init ("0"b), 17 95 3 flags_pad bit(35) unal init ("0"b), 17 96 2 mode fixed bin init ( 1), 17 97 2 severity fixed bin init ( 0), 17 98 2 code fixed bin(35) init ( 0), 17 99 2 caller char(65) varying init (""), 17 100 2 data, 17 101 3 data_ptr ptr init (null), 17 102 3 data_lth fixed bin(21) init ( 0), 17 103 2 class char(10) varying init (""), 17 104 2 ioa_msg char(500) varying init (""); 17 105 17 106 /* Syntax: call Abort (severity, ioa_ctl, args); */ 17 107 17 108 dcl 1 sl_info_sev_msg aligned int static options(constant), 17 109 2 version char(8) init ("sl_info1"), 17 110 2 arg_list_ptr ptr init (null), 17 111 2 loc, 17 112 3 (mode init (-1), 17 113 severity init ( 1), 17 114 code init ( 0), 17 115 caller init (-1), 17 116 data init ( 0), 17 117 class init ( 0), 17 118 ioa_msg init ( 2)) fixed bin, 17 119 2 flags, 17 120 3 ioa_msg_is_error_code bit(1) unal init ("0"b), 17 121 3 flags_pad bit(35) unal init ("0"b), 17 122 2 mode fixed bin init ( 1), 17 123 2 severity fixed bin init ( 0), 17 124 2 code fixed bin(35) init ( 0), 17 125 2 caller char(65) varying init (""), 17 126 2 data, 17 127 3 data_ptr ptr init (null), 17 128 3 data_lth fixed bin(21) init ( 0), 17 129 2 class char(10) varying init (""), 17 130 2 ioa_msg char(500) varying init (""); 17 131 17 132 /* Syntax: call Abort (severity, ioa_ctl_as_error_code, args); */ 17 133 17 134 dcl 1 sl_info_sev_coded_msg aligned int static options(constant), 17 135 2 version char(8) init ("sl_info1"), 17 136 2 arg_list_ptr ptr init (null), 17 137 2 loc, 17 138 3 (mode init (-1), 17 139 severity init ( 1), 17 140 code init ( 0), 17 141 caller init (-1), 17 142 data init ( 0), 17 143 class init ( 0), 17 144 ioa_msg init ( 2)) fixed bin, 17 145 2 flags, 17 146 3 ioa_msg_is_error_code bit(1) unal init ("1"b), 17 147 3 flags_pad bit(35) unal init ("0"b), 17 148 2 mode fixed bin init ( 1), 17 149 2 severity fixed bin init ( 0), 17 150 2 code fixed bin(35) init ( 0), 17 151 2 caller char(65) varying init (""), 17 152 2 data, 17 153 3 data_ptr ptr init (null), 17 154 3 data_lth fixed bin(21) init ( 0), 17 155 2 class char(10) varying init (""), 17 156 2 ioa_msg char(500) varying init (""); 17 157 17 158 17 159 /* Syntax: call Abort (severity, code, error_return_label, ioa_ctl, args); */ 17 160 17 161 dcl 1 sl_info_sev_code_label_msg aligned int static options(constant), 17 162 2 version char(8) init ("sl_info1"), 17 163 2 arg_list_ptr ptr init (null), 17 164 2 loc, 17 165 3 (mode init (-1), 17 166 severity init ( 1), 17 167 code init ( 2), 17 168 caller init (-1), 17 169 data init ( 0), 17 170 class init ( 0), 17 171 ioa_msg init ( 4)) fixed bin, 17 172 2 flags, 17 173 3 ioa_msg_is_error_code bit(1) unal init ("0"b), 17 174 3 flags_pad bit(35) unal init ("0"b), 17 175 2 mode fixed bin init ( 1), 17 176 2 severity fixed bin init ( 0), 17 177 2 code fixed bin(35) init ( 0), 17 178 2 caller char(65) varying init (""), 17 179 2 data, 17 180 3 data_ptr ptr init (null), 17 181 3 data_lth fixed bin(21) init ( 0), 17 182 2 class char(10) varying init (""), 17 183 2 ioa_msg char(500) varying init (""); 17 184 17 185 /* Syntax: call Log_error (code, ioa_ctl, args); */ 17 186 17 187 dcl 1 sl_info_code_msg aligned int static options(constant), 17 188 2 version char(8) init ("sl_info1"), 17 189 2 arg_list_ptr ptr init (null), 17 190 2 loc, 17 191 3 (mode init (-1), 17 192 severity init (-1), 17 193 code init ( 1), 17 194 caller init (-1), 17 195 data init ( 0), 17 196 class init ( 0), 17 197 ioa_msg init ( 2)) fixed bin, 17 198 2 flags, 17 199 3 ioa_msg_is_error_code bit(1) unal init ("0"b), 17 200 3 flags_pad bit(35) unal init ("0"b), 17 201 2 mode fixed bin init ( 1), 17 202 2 severity fixed bin init ( 0), 17 203 2 code fixed bin(35) init ( 0), 17 204 2 caller char(65) varying init (""), 17 205 2 data, 17 206 3 data_ptr ptr init (null), 17 207 3 data_lth fixed bin(21) init ( 0), 17 208 2 class char(10) varying init (""), 17 209 2 ioa_msg char(500) varying init (""); 17 210 17 211 17 212 /* Syntax: call Trace (ioa_ctl, args); */ 17 213 17 214 dcl 1 sl_info_msg aligned int static options(constant), 17 215 2 version char(8) init ("sl_info1"), 17 216 2 arg_list_ptr ptr init (null), 17 217 2 loc, 17 218 3 (mode init (-1), 17 219 severity init (-1), 17 220 code init ( 0), 17 221 caller init (-1), 17 222 data init ( 0), 17 223 class init ( 0), 17 224 ioa_msg init ( 1)) fixed bin, 17 225 2 flags, 17 226 3 ioa_msg_is_error_code bit(1) unal init ("0"b), 17 227 3 flags_pad bit(35) unal init ("0"b), 17 228 2 mode fixed bin init ( 1), 17 229 2 severity fixed bin init ( 0), 17 230 2 code fixed bin(35) init ( 0), 17 231 2 caller char(65) varying init (""), 17 232 2 data, 17 233 3 data_ptr ptr init (null), 17 234 3 data_lth fixed bin(21) init ( 0), 17 235 2 class char(10) varying init (""), 17 236 2 ioa_msg char(500) varying init (""); 17 237 17 238 /* END INCLUDE FILE sys_log_constants.incl.pl1 */ 846 847 /* BEGIN INCLUDE FILE syserr_constants.incl.pl1 ... 11/11/80 W. Olin Sibert */ 18 2 /* 85-02-12, EJ Sharpe - Added sorting class constants, removed AIM_MESSAGE, added new action code names. */ 18 3 /* 85-04-24, G. Palter - Renamed SYSERR_UNUSED_10 to SYSERR_RING1_ERROR to reflect its actual use. */ 18 4 18 5 /* This include file has an ALM version. Keep 'em in sync! */ 18 6 18 7 dcl ( 18 8 18 9 /* The following constants define the message action codes. This indicates 18 10*how a message is to be handled. */ 18 11 18 12 SYSERR_CRASH_SYSTEM init (1), 18 13 CRASH init (1), /* Crash the system, and bleat plaintively. */ 18 14 18 15 SYSERR_TERMINATE_PROCESS init (2), 18 16 TERMINATE_PROCESS init (2), /* Terminate the process, print the message, and beep. */ 18 17 18 18 SYSERR_PRINT_WITH_ALARM init (3), 18 19 BEEP init (3), /* Beep and print the message on the console. */ 18 20 18 21 SYSERR_PRINT_ON_CONSOLE init (0), 18 22 ANNOUNCE init (0), /* Just print the message on the console. */ 18 23 18 24 SYSERR_LOG_OR_PRINT init (4), 18 25 LOG init (4), /* Log the message, or print it if it can't be logged */ 18 26 18 27 SYSERR_LOG_OR_DISCARD init (5), 18 28 JUST_LOG init (5), /* Just try to log the message, and discard it if it can't be */ 18 29 18 30 18 31 /* The following constants are added to the normal severities to indicate 18 32*different sorting classes of messages. */ 18 33 18 34 SYSERR_SYSTEM_ERROR init (00), /* indicates a standard level system error */ 18 35 SYSERR_RING1_ERROR init (10), /* indicates an error detected in ring 1 (mseg_, RCP) */ 18 36 SYSERR_COVERT_CHANNEL init (20), /* indicates covert channel audit trail message */ 18 37 SYSERR_UNSUCCESSFUL_ACCESS init (30), /* indicates access denial audit trail message */ 18 38 SYSERR_SUCCESSFUL_ACCESS init (40) /* indicates access grant audit trail message */ 18 39 ) fixed bin internal static options (constant); 18 40 18 41 /* END INCLUDE FILE syserr_constants.incl.pl1 */ 847 848 /* BEGIN INCLUDE FiLE ... terminal_info.incl.pl1 */ 19 2 19 3 /* Created 5/25/77 by J. Stern */ 19 4 19 5 19 6 dcl 1 terminal_info aligned based (terminal_info_ptr), /* info structure for terminal_info order */ 19 7 2 version fixed bin, /* version number of this sturcture */ 19 8 2 id char (4) unaligned, /* terminal id from answerback */ 19 9 2 term_type char (32) unaligned, /* terminal type name */ 19 10 2 line_type fixed bin, /* line type number */ 19 11 2 baud_rate fixed bin, 19 12 2 reserved (4) fixed bin; /* reserved for future use */ 19 13 19 14 19 15 dcl terminal_info_ptr ptr; 19 16 dcl terminal_info_version fixed bin int static options (constant) init (1); /* current version */ 19 17 19 18 19 19 /* END INCLUDE FILE ... terminal_info.incl.pl1 */ 848 849 /* BEGIN INCLUDE FILE tty_states.incl.pl1 BIM November 1980 */ 20 2 20 3 /* format: style1 */ 20 4 declare (TTY_STATE_MASKED init (-1), 20 5 TTY_STATE_HUNG_UP init (1), /* Returned by hcs_$tty_* when neither listening or dialed */ 20 6 TTY_STATE_LISTENING init (2), /* listening */ 20 7 TTY_STATE_DIALED_UP init (5) /* really dialed up */ 20 8 ) fixed bin internal static options (constant); 20 9 20 10 /* END INCLUDE FILE tty_states.incl.pl1 */ 849 850 851 852 /* BEGIN MESSAGE DOCUMENTATION 853* 854* Message: 855* mc_tty_: Channel CHANNEL (vchannel VCHANNEL) received TIMEOUT while awaiting DIALUP wakeup. 856* 857* S: $info 858* 859* T: $run 860* 861* M: Wakeup was not acted on soon enough by AS. 862* 863* A: $inform 864* 865* Message: 866* mc_tty_: Channel CHANNEL received TIMEOUT while awaiting DIALUP wakeup. 867* 868* S: $info 869* 870* T: $run 871* 872* M: Wakeup was not acted on soon enough by AS. 873* 874* A: $inform 875* 876* Message: 877* mc_tty_: Event sent from incorrect ring. 878* event channel = N, event message = M, event sender = S, device signal = D 879* ring = R, event data ptr = P 880* 881* S: $info 882* 883* T: $run 884* 885* M: An event was sent from a ring higher than the specified MNA ring 2. 886* 887* A: $inform 888* 889* Message: 890* mc_tty_: ERROR_TABLE_MESSAGE Connecting to CHANNEL (vchannel VCHANNEL). 891* 892* S: $info 893* 894* T: $run 895* 896* M: Error creating an IOCB while attempting to connect channel CHANNEL as 897* message coordinator terminal. Channel cannot be accepted as MC terminal. 898* Cannot attach and open I/O switches. 899* 900* A: $inform 901* 902* Message: 903* mc_tty_: ERROR_TABLE_MESSAGE Connecting to CHANNEL. 904* 905* S: $info 906* 907* T: $run 908* 909* M: Error creating an IOCB while attempting to connect channel CHANNEL as 910* message coordinator terminal. Channel cannot be accepted as MC terminal. 911* Cannot attach and open I/O switches. 912* 913* A: $inform 914* 915* Message: 916* mc_tty_: Channel CHANNEL (vchannel VCHANNEL) received WAKEUP_TYPE wakeup while awaiting DIALUP. 917* 918* S: $info 919* 920* T: $run 921* 922* M: Received an unexpected WAKEUP_TYPE wakeup while waiting for a DIALUP 923* wakeup. Dialup will not succeed. 924* 925* A: $inform 926* 927* Message: 928* mc_tty_: Channel CHANNEL received WAKEUP_TYPE wakeup while awaiting DIALUP. 929* 930* S: $info 931* 932* T: $run 933* 934* M: Did not receive a DIALUP wakeup WAKEUP_TYPE when should have. 935* Recieved an unexpected WAKEUP_TYPE. 936* 937* A: $inform 938* 939* Message: 940* mc_tty_: Line CHAN hung up. 941* 942* S: as (severity 0) 943* 944* T: $run 945* 946* M: Channel CHAN has been hungup during a system shutdown. 947* 948* A: $ignore 949* 950* Message: 951* mc_tty_: Invalid argument. Invalid MCS wakeup event type TYPE. 952* 953* S: $as0 954* 955* T: $run 956* 957* M: An MCS wakeup event type TYPE was received which is out of the range 958* of known event types. The wakeup was ignored. 959* 960* A: $ignore 961* 962* Message: 963* mc_tty_: Invalid argument. Unexpected MCS wakeup event type TYPE. 964* 965* S: $as0 966* 967* T: $run 968* 969* M: A known MCS wakeup event type TYPE was received but was not expected 970* for a message coordinator terminal. The wakeup was ignored. 971* 972* Message: 973* mc_tty_: Invalid argument. Invalid DSA wakeup event type TYPE. 974* 975* S: $as0 976* 977* T: $run 978* 979* M: A DSA wakeup event type TYPE was received which is out of the range 980* of known event types. The wakeup was ignored. 981* 982* A: $ignore 983* 984* Message: 985* mc_tty_: Invalid argument. Unexpected DSA wakeup event type TYPE. 986* 987* S: $as0 988* 989* T: $run 990* 991* M: A known DSA wakeup event type TYPE was received but was not expected 992* for a message coordinator terminal. The wakeup was ignored. 993* 994* A: $ignore 995* 996* Message: 997* mc_tty_: Invalid argument. Unexpected network type TYPE in event message. 998* 999* S: $as0 1000* 1001* T: $run 1002* 1003* M: An unknown network ident in wakeup event message was received. 1004* The wakeup was ignored. 1005* 1006* A: $ignore 1007* 1008* Message: 1009* OPER: 1010* 1011* S: Initializer terminal. 1012* 1013* T: $run 1014* 1015* M: This message is typed if the operator 1016* enters a blank line on a message coordinator terminal. 1017* It indicates that input is expected 1018* on the terminal, and that output will be 1019* inhibited for 30 seconds. 1020* 1021* A: Type a system control command. 1022* 1023* Message: 1024* Channel CHANNEL_NAME attached by Message Coordinator. 1025* 1026* S: Initializer terminal. 1027* 1028* T: $run 1029* 1030* M: The terminal has been attached by the message coordinator in 1031* response to an accept or substty command. 1032* 1033* A: Proceed to use the terminal. 1034* 1035* Message: 1036* mc_tty_: called with bad pointer 1037* 1038* S: BOS typewriter. 1039* 1040* T: $run 1041* 1042* M: This message indicates a bug in system_control_ or in 1043* the Message Coordinator. An illegal signal has been 1044* received by the attached terminal handler in system_control_; 1045* the data pointer that should point to an 1046* entry in the mc_anstbl does not point to the correct 1047* segment. The signal is ignored. 1048* 1049* A: $contact 1050* 1051* Message: 1052* mc_tty_: called with null ptr 1053* 1054* S: BOS typewriter. 1055* 1056* T: $run 1057* 1058* M: This message indicates a bug in system_control_ or 1059* in the Message Coordinator. An illegal signal has 1060* been received by the attached terminal handler in 1061* system_control_. The signal is ignored. 1062* 1063* A: $contact 1064* 1065* Message: 1066* mc_tty_: channel CHAN masked by FNP. 1067* 1068* S: $beep 1069* 1070* T: $run 1071* 1072* M: The channel, CHAN, has just been masked by the FNP. This is usually 1073* due to some hardware problem with the channel. 1074* 1075* A: Fix the problem before re-using the channel. 1076* 1077* Message: 1078* mc_tty_: ERROR_TABLE_MESSAGE wru failed for CHAN. 1079* 1080* S: $info 1081* 1082* T: $run 1083* 1084* M: The CDT entry for channel CHAN requires an answerback, but an error 1085* was returned while trying to read it. The returned error is described by 1086* ERROR_TABLE_MESSAGE. 1087* 1088* A: Verify that the channel is configured correctly in the CDT. 1089* 1090* Message: 1091* mc_tty_: ERROR_TABLE_MESSAGE Could not remove CHAN from MC use. 1092* 1093* S: $info 1094* 1095* T: $run 1096* 1097* M: An error, described by ERROR_TABLE_MESSAGE, was returned from 1098* mc_commands_$remove_tty while tring to remove channel CHAN from MC service 1099* after a hangup. 1100* 1101* A: $inform 1102* 1103* Message: 1104* mc_tty_: ERROR_TABLE_MESSAGE Could not get channel CHAN back from MC. 1105* 1106* S: $info 1107* 1108* T: $run 1109* 1110* M: An error, described by ERROR_TABLE_MESSAGE, was returned from 1111* astty_$tty_event while trying to give channel CHAN back to the AS after a 1112* hangup. 1113* 1114* A: $inform 1115* 1116* Message: 1117* mc_tty_: ERROR_TABLE_MESSAGE Could not notify answering service of new 1118* login channel CHAN. 1119* 1120* S: $info 1121* 1122* T: $run 1123* 1124* M: An error, described by ERROR_TABLE_MESSAGE, was returned from 1125* hcs_$wakeup while trying to notify the AS about the new login channel CHAN, 1126* after a hangup. 1127* 1128* A: $inform 1129* 1130* Message: 1131* mc_tty_: sc_stat_$mc_ansp is null 1132* 1133* S: $info 1134* 1135* T: $run 1136* 1137* M: This message indicates a bug in system_control_ or 1138* in the Message Coordinator. A signal has been received 1139* by the attached terminal handler in system_control_ 1140* but the signal cannot be handled because the mc_anstbl 1141* cannot be located. The signal is ignored. 1142* 1143* A: $contact 1144* 1145* Message: 1146* mc_tty_: ERROR_TABLE_MESSAGE Failed to set terminal type for CHAN. 1147* 1148* S: $info 1149* 1150* T: $run 1151* 1152* M: An error described ty ERROR_TABLE_MESSAGE was returned while trying to 1153* set the terminal type on channel CHAN. 1154* 1155* A: Depending on the error, it may be ignored, or the channel may be 1156* hungup. If the channel is hungup, an attempt should be made to fix the 1157* error before connecting the terminal again. 1158* 1159* Message: 1160* mc_tty_: channel CHAN hung up. 1161* 1162* S: $beep 1163* 1164* T: $run 1165* 1166* M: This message indicates that an attempt has been made 1167* to read input from a terminal device channel attached 1168* to the Message Coordinator and that the channel is 1169* not active. This condition may be due to a transient 1170* line condition, a terminal failure, or a communications 1171* line failure. The system attempts to proceed. 1172* 1173* A: If the terminal is a hardwired device and can be 1174* reconnected, do so. If this is a dialup channel that has 1175* failed, use the substty or drop commands to remove 1176* the channel. 1177* 1178* Message: 1179* mc_tty_: No default ttp for CHANNEL line LINE baud BAUD. 1180* 1181* S: $beep 1182* 1183* T: $run 1184* 1185* M: Could not get default terminal type for terminal on CHANNEL which 1186* has a line type of LINE. Hangup will follow. 1187* 1188* A: $inform 1189* 1190* 1191* END MESSAGE DOCUMENTATION */ 1192 1193 end mc_tty_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 07/19/88 1536.0 mc_tty_.pl1 >special_ldd>install>MR12.2-1061>mc_tty_.pl1 771 1 08/06/87 0913.5 net_event_message.incl.pl1 >ldd>include>net_event_message.incl.pl1 833 2 08/06/87 0913.4 as_data_.incl.pl1 >ldd>include>as_data_.incl.pl1 834 3 08/06/87 0913.4 as_meter_numbers.incl.pl1 >ldd>include>as_meter_numbers.incl.pl1 835 4 09/09/75 2007.3 author_dcl.incl.pl1 >ldd>include>author_dcl.incl.pl1 4-10 5 04/21/82 1211.8 author.incl.pl1 >ldd>include>author.incl.pl1 836 6 08/06/87 0913.0 cdt.incl.pl1 >ldd>include>cdt.incl.pl1 6-314 7 07/19/88 1524.1 fnp_types.incl.pl1 >special_ldd>install>MR12.2-1061>fnp_types.incl.pl1 837 8 07/15/86 2005.5 dial_event_message.incl.pl1 >ldd>include>dial_event_message.incl.pl1 838 9 08/06/87 0913.4 dialup_values.incl.pl1 >ldd>include>dialup_values.incl.pl1 839 10 06/29/79 1728.0 event_call_info.incl.pl1 >ldd>include>event_call_info.incl.pl1 840 11 05/23/83 0916.6 iox_entries.incl.pl1 >ldd>include>iox_dcls.incl.pl1 841 12 08/06/87 0913.5 mc_anstbl.incl.pl1 >ldd>include>mc_anstbl.incl.pl1 842 13 08/06/87 0913.5 net_event_message.incl.pl1 >ldd>include>net_event_message.incl.pl1 843 14 08/06/87 0913.5 sc_stat_.incl.pl1 >ldd>include>sc_stat_.incl.pl1 844 15 08/06/87 0913.5 sc_subsystem_info_.incl.pl1 >ldd>include>sc_subsystem_info_.incl.pl1 845 16 09/01/77 1359.3 set_term_type_info.incl.pl1 >ldd>include>set_term_type_info.incl.pl1 846 17 08/06/87 0913.5 sys_log_constants.incl.pl1 >ldd>include>sys_log_constants.incl.pl1 847 18 05/17/85 0615.7 syserr_constants.incl.pl1 >ldd>include>syserr_constants.incl.pl1 848 19 06/29/77 1624.0 terminal_info.incl.pl1 >ldd>include>terminal_info.incl.pl1 849 20 01/21/85 0912.3 tty_states.incl.pl1 >ldd>include>tty_states.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. ANNOUNCE 000365 constant fixed bin(17,0) initial dcl 18-7 set ref 229* 293* 302* 374* 483* 490* 503* 623* 722* 741* BEEP 000374 constant fixed bin(17,0) initial dcl 18-7 set ref 327* 466* DIALUP_EVENT constant fixed bin(17,0) initial dcl 177 ref 251 286 777 804 DSA_ATTENTION_MSG constant fixed bin(8,0) initial unsigned dcl 1-83 ref 808 DSA_DATA_INPUT_MSG constant fixed bin(8,0) initial unsigned dcl 1-100 ref 810 DSA_DATA_OUTPUT_MSG constant fixed bin(8,0) initial unsigned dcl 1-101 ref 812 DSA_ESTABLISHMENT_MSG constant fixed bin(8,0) initial unsigned dcl 1-97 ref 804 DSA_MSG_TYPE_TO_PNAME 000000 constant char(20) initial array packed unaligned dcl 1-103 set ref 818* DSA_NETWORK_TYPE constant fixed bin(4,0) initial unsigned dcl 1-35 ref 800 DSA_TERM_ABNORMAL_MSG constant fixed bin(8,0) initial unsigned dcl 1-96 ref 806 DSA_UNSPECIFIED_MSG constant fixed bin(8,0) initial unsigned dcl 1-82 ref 802 EVENT_TO_PNAME 000222 constant char(22) initial array packed unaligned dcl 189 set ref 273* 302* Event_call_info_ptr parameter pointer dcl 79 ref 15 207 210 652 659 FNP_UP constant fixed bin(17,0) initial dcl 6-298 ref 642 HANGUP_EVENT constant fixed bin(17,0) initial dcl 177 ref 253 310 310 324 779 806 INPUT_AVAILABLE_EVENT constant fixed bin(17,0) initial dcl 177 ref 783 810 JUST_DIALED constant bit(15) initial dcl 8-29 ref 251 LINE_STATUS_EVENT constant fixed bin(17,0) initial dcl 177 ref 343 787 MASKED_EVENT constant fixed bin(17,0) initial dcl 177 ref 310 324 327 789 MAX_DSA_EVENT_MSG_TYPE constant fixed bin(17,0) initial dcl 1-80 ref 815 MAX_MCS_EVENT_MSG_TYPE constant fixed bin(17,0) initial dcl 1-46 ref 792 MCS_DIALUP_MSG constant fixed bin(17,0) initial dcl 1-50 ref 777 MCS_HANGUP_MSG constant fixed bin(17,0) initial dcl 1-52 ref 779 MCS_LINE_STATUS_MSG constant fixed bin(17,0) initial dcl 1-62 ref 787 MCS_MASKED_MSG constant fixed bin(17,0) initial dcl 1-64 ref 789 MCS_MSG_TYPE_TO_PNAME 000144 constant char(20) initial array packed unaligned dcl 1-67 set ref 795* MCS_NETWORK_TYPE constant fixed bin(4,0) initial unsigned dcl 1-34 ref 773 MCS_QUIT_MSG constant fixed bin(17,0) initial dcl 1-56 ref 781 MCS_READ_MSG constant fixed bin(17,0) initial dcl 1-58 ref 783 MCS_UNSPECIFIED_MSG constant fixed bin(17,0) initial dcl 1-48 ref 775 MCS_WRITE_MSG constant fixed bin(17,0) initial dcl 1-60 ref 785 MC_SERVICE constant fixed bin(17,0) initial dcl 6-259 ref 478 MC_WAIT_ANSWERBACK constant fixed bin(17,0) initial dcl 12-103 ref 378 390 MC_WAIT_DIALUP constant fixed bin(17,0) initial dcl 12-103 ref 286 331 346 511 531 MC_WAIT_READY constant fixed bin(17,0) initial dcl 12-103 ref 236 329 382 392 466 684 ME 000306 constant char(32) initial packed unaligned dcl 173 set ref 229* 273* 293* 302* 327* 374* 396* 462* 466* 483* 490* 503* 623* 722* 734* 741* 792* 795* 815* 818* 824* MSGCORD_METER 000221 constant fixed bin(17,0) initial dcl 3-29 set ref 204* 319* 551* 570* NOW_HUNG_UP constant fixed bin(17,0) initial dcl 9-76 ref 498 OUTPUT_SPACE_AVAILABLE_EVENT constant fixed bin(17,0) initial dcl 177 ref 340 785 812 P_event_type parameter fixed bin(8,0) packed unsigned unaligned dcl 768 set ref 761 775 777 779 781 783 785 787 789 792 792* 795 802 804 806 808 810 812 815 815* 818 P_network_type parameter fixed bin(4,0) packed unsigned unaligned dcl 767 set ref 761 773 800 824* QUIT_EVENT constant fixed bin(17,0) initial dcl 177 ref 314 781 808 SL_LOG_SILENT 000365 constant fixed bin(17,0) initial dcl 17-14 set ref 273* 396* 462* 734* 792* 795* 815* 818* 824* STTI 000600 automatic structure level 1 dcl 95 set ref 736 736 TI 000612 automatic structure level 1 dcl 96 set ref 402* 404 404 706* 710 710 TTY_STATE_DIALED_UP constant fixed bin(17,0) initial dcl 20-4 ref 310 349 UNSPECIFIED_EVENT constant fixed bin(17,0) initial dcl 177 ref 775 802 WAIT_GREETING_MSG constant fixed bin(17,0) initial dcl 9-25 ref 497 WHITESPACE 000304 constant char(7) initial packed unaligned dcl 174 ref 432 a_type_to_set parameter char packed unaligned dcl 691 ref 688 697 access_control 50(09) based structure level 3 packed packed unaligned dcl 6-72 active 0(02) based bit(1) level 3 packed packed unaligned dcl 12-54 ref 665 addr builtin function dcl 167 ref 214 250 269 269 309 309 348 348 404 404 450 450 502 581 581 587 587 608 608 664 670 670 710 710 736 736 754 754 as_$meter_enter 000062 constant entry external dcl 143 ref 204 as_$meter_exit 000064 constant entry external dcl 143 ref 319 551 570 astty_$tty_event 000010 constant entry external dcl 109 ref 489 attributes 50 based structure level 3 packed packed unaligned dcl 6-72 author based structure level 2 dcl 4-9 author_dcl based structure level 1 dcl 4-9 baseno builtin function dcl 167 ref 217 217 baud_rate 13 000612 automatic fixed bin(17,0) level 2 dcl 96 set ref 717* 722* cdte based structure level 1 dcl 6-72 cdtep 22 based pointer level 2 in structure "mc_ate" dcl 12-54 in procedure "mc_tty_" ref 212 cdtep 000656 automatic pointer dcl 6-41 in procedure "mc_tty_" set ref 212* 332 351 358 360 407 476 478 487 489* 490 493 493 494 495 496 497 498 499 499* 502 503 512 532 637 640 640 661* 665 694 701 701 703 703 channel_id 000644 automatic fixed bin(71,0) level 2 in structure "local_event_call_info" dcl 655 in procedure "mc_tty_" set ref 668* channel_id based fixed bin(71,0) level 2 in structure "event_call_info" dcl 10-7 in procedure "mc_tty_" set ref 256* channel_threads based structure level 1 dcl 6-249 code 000100 automatic fixed bin(35,0) dcl 84 in procedure "mc_tty_" set ref 289* 290* 291 293* 297* 309* 318* 348* 349 368* 369 372 374* 404* 405 407* 482* 483 483* 489* 490 490* 502* 503 503* 522 528 537* 562* 581* 587* 588 588* 591 593 608* 610 610* 612 614 710* 711 714 717* 718 722* 736* 737 739 741* code 001020 automatic fixed bin(35,0) dcl 750 in procedure "FLUSH_LINE_STATUS" set ref 752* 753 754* 755 755 codex 000732 automatic fixed bin(35,0) dcl 635 set ref 641* 642 control 1(21) based bit(15) level 3 in structure "dial_event_message" packed packed unaligned dcl 8-14 in procedure "mc_tty_" ref 251 control 213 based structure level 2 in structure "mc_ate" dcl 12-54 in procedure "mc_tty_" current_service_type 74 based fixed bin(17,0) level 2 packed packed unaligned dcl 6-72 set ref 493* current_size 1 based fixed bin(17,0) level 2 dcl 12-25 ref 663 current_terminal_type 101 based char(32) level 2 packed packed unaligned dcl 6-72 ref 701 701 data_ptr 6 based pointer level 2 in structure "event_call_info" dcl 10-7 in procedure "mc_tty_" set ref 211 256* 661 data_ptr 6 000644 automatic pointer level 2 in structure "local_event_call_info" dcl 655 in procedure "mc_tty_" set ref 669* dev_signal 5 based bit(18) level 3 packed packed unaligned dcl 10-7 set ref 256* dial_ev_chn 132 based fixed bin(71,0) level 2 dcl 6-72 set ref 495* dial_event_message based structure level 1 dcl 8-14 dial_event_message_ptr 000660 automatic pointer dcl 8-12 set ref 250* 251 dialed_to_procid 112 based bit(36) level 2 dcl 6-72 set ref 494* dont_read_answerback 50(04) based bit(1) level 4 packed packed unaligned dcl 6-72 ref 360 dsa_ring_number 103 based fixed bin(17,0) level 2 dcl 12-25 ref 245 entry 142 based structure array level 2 dcl 12-25 set ref 664 errmsg 000101 automatic char(200) packed unaligned dcl 85 set ref 221* 256* 259* error_table_$bad_arg 000076 external static fixed bin(35,0) dcl 156 set ref 792* 795* 815* 818* 824* error_table_$io_no_permission 000104 external static fixed bin(35,0) dcl 160 ref 528 591 612 711 737 error_table_$line_status_pending 000100 external static fixed bin(35,0) dcl 157 ref 522 752 755 error_table_$timeout 000102 external static fixed bin(35,0) dcl 159 ref 588 610 error_table_$undefined_order_request 000106 external static fixed bin(35,0) dcl 162 ref 369 event 200 based fixed bin(71,0) level 2 in structure "mc_ate" dcl 12-54 in procedure "mc_tty_" set ref 366* 437* 443* 668 event 72 based fixed bin(71,0) level 2 in structure "cdte" dcl 6-72 in procedure "mc_tty_" set ref 502* event_call_info based structure level 1 dcl 10-7 set ref 660 event_call_info_ptr 000662 automatic pointer dcl 10-5 set ref 210* 211 214 223 245 245 250 256 256 256 256 256 256 262 659* 660 661 event_type 001030 automatic fixed bin(17,0) dcl 769 set ref 775* 777* 779* 781* 783* 785* 787* 789* 797* 802* 804* 806* 808* 810* 812* 820* 826* 828 fixed_bin_71 based fixed bin(71,0) dcl 103 set ref 502* flags 11 000600 automatic structure level 2 in structure "STTI" packed packed unaligned dcl 95 in procedure "mc_tty_" set ref 732* flags 1(18) based structure level 2 in structure "dial_event_message" packed packed unaligned dcl 8-14 in procedure "mc_tty_" flags 50 based structure level 2 in structure "cdte" dcl 6-72 in procedure "mc_tty_" flags based structure level 2 in structure "mc_ate" dcl 12-54 in procedure "mc_tty_" fnpe based structure level 1 dcl 6-200 hangup_entry 20 based entry variable level 2 dcl 15-23 ref 553 hcs_$wakeup 000024 constant entry external dcl 118 ref 318 502 537 562 hphcs_$syserr 000020 constant entry external dcl 114 ref 229 302 327 466 623 hphcs_$syserr_error_code 000022 constant entry external dcl 114 ref 293 374 483 490 503 722 741 i 000654 automatic fixed bin(17,0) dcl 657 in procedure "mc_tty_" set ref 663* 664* i 000731 automatic fixed bin(17,0) dcl 634 in procedure "listen_if_mpx_up" set ref 637* 638 640 in_use based fixed bin(17,0) level 2 dcl 6-72 set ref 498* index builtin function dcl 167 ref 637 inhibit 213 based bit(1) level 3 packed packed unaligned dcl 12-54 set ref 235* 317* 356* 435 438* 441* 449* 451* 535* 683* initial_terminal_type 37 based char(32) level 2 packed packed unaligned dcl 6-72 ref 703 703 input_buffer 000163 automatic char(1000) packed unaligned dcl 86 set ref 396 396 407 407 432 450 450 581 581 581 581 587 587 587 587 ioa_$rs 000026 constant entry external dcl 119 ref 256 681 iocb 24 based pointer level 2 dcl 12-54 set ref 227 238* 286 309* 348* 365* 368* 400 404* 416* 528* 581* 587* 608* 642* 710* 736* 754* 758* iox_$control 000110 constant entry external dcl 11-8 ref 238 309 348 365 368 404 416 528 642 710 736 754 758 ipc_$drain_chn 000030 constant entry external dcl 120 ref 366 length builtin function dcl 167 ref 581 581 587 587 608 608 640 length_read_in 000560 automatic fixed bin(21,0) dcl 88 set ref 394 396 396 407 407 428 432 450* 581* 587* lg_ctl_$logout_channel 000012 constant entry external dcl 110 ref 499 lg_ctl_$logout_operator 000032 constant entry external dcl 121 ref 546 line_status_space 000556 automatic bit(72) dcl 87 set ref 754 754 line_type 12 000612 automatic fixed bin(17,0) level 2 in structure "TI" dcl 96 in procedure "mc_tty_" set ref 717* 722* line_type 33 based fixed bin(17,0) level 2 in structure "cdte" packed packed unaligned dcl 6-72 in procedure "mc_tty_" ref 407 local_event_call_info 000644 automatic structure level 1 dcl 655 set ref 660* 670 670 ls_procid 202 based bit(36) level 2 dcl 12-54 ref 245 ls_wakeup 000561 automatic bit(1) packed unaligned dcl 89 set ref 249* mbz 11(03) 000600 automatic bit(33) level 3 packed packed unaligned dcl 95 set ref 733* mc_ansp 000664 automatic pointer dcl 12-25 set ref 205* 223 245 273 318 396 502 537 562 662* 663 664 734 mc_anstbl based structure level 1 dcl 12-25 mc_ate based structure level 1 dcl 12-54 mc_atep 000666 automatic pointer dcl 12-54 set ref 211* 212 217 227 229 229 229 235 236 238 245 273 273 283 286 286 290* 293 293 293 297 302 302 302 309 314 314 317 318 321 327 329 331 346 348 356 365 366 368 374 378 382 390 392 396 400 404 416 435 437 438 441 443 449 450 451 462 463 466 466 482 483 511 528 531 535 537 543 543 545* 546 546 549 549 562 562 562 581 587 608 642 664* 665 665 668 669 681 683 684 710 722 734 736 741 754 758 mc_commands_$create_iocb 000036 constant entry external dcl 124 ref 290 mc_commands_$remove_tty 000014 constant entry external dcl 111 ref 297 482 mc_commands_$sign_out 000034 constant entry external dcl 123 ref 545 mc_con_rec_$check 000016 constant entry external dcl 113 ref 386 418 mc_procid 2 based bit(36) level 2 dcl 12-25 set ref 223 318* 502* 537* 562* message parameter char packed unaligned dcl 602 in procedure "write" set ref 599 608 608 608 608 message 000742 automatic char(100) packed unaligned dcl 679 in procedure "GREET" set ref 681* 682 682 message 000562 automatic char(8) packed unaligned dcl 90 in procedure "mc_tty_" set ref 501* 502 message 2 based fixed bin(71,0) level 2 in structure "event_call_info" dcl 10-7 in procedure "mc_tty_" set ref 214 250 256* 262 mpx_name 000720 automatic char(32) packed unaligned dcl 632 set ref 640* 641* mpxe based structure level 1 dcl 6-221 msg parameter char packed unaligned dcl 621 set ref 619 623* multiplexer_mgr_$state_mpx 000052 constant entry external dcl 136 ref 641 name 1 000600 automatic char(32) level 2 in structure "STTI" packed packed unaligned dcl 95 in procedure "mc_tty_" set ref 731* name 2 based char(32) level 2 in structure "cdte" dcl 6-72 in procedure "mc_tty_" set ref 490* 503* 637 640 640 665 net_event_message based structure level 1 dcl 13-22 net_event_message_arg 000670 automatic fixed bin(71,0) dcl 13-19 set ref 262* 269 269 network_type 0(24) based fixed bin(4,0) level 2 packed packed unsigned unaligned dcl 13-22 set ref 269* null builtin function dcl 167 ref 207 215 227 238 238 286 314 332 351 358 365 365 368 368 400 416 416 476 487 496 512 528 528 532 543 549 642 642 694 758 758 old_operator_name 000564 automatic char(32) packed unaligned dcl 91 set ref 545* 546* origin 5 based structure level 2 dcl 10-7 output_pending 213(02) based bit(1) level 3 packed packed unaligned dcl 12-54 ref 562 output_wait 213(01) based bit(1) level 3 packed packed unaligned dcl 12-54 ref 562 p1 000574 automatic pointer dcl 92 set ref 214* 225 perm_mc_service 000576 automatic bit(1) packed unaligned dcl 93 set ref 476* 478* 480 process 111 based pointer level 2 packed packed unaligned dcl 6-72 set ref 496* queue_event 176 based fixed bin(71,0) level 2 dcl 12-54 set ref 318* 537* 562* read_answerback 000577 automatic bit(1) packed unaligned dcl 94 set ref 358* 360* 363 real_tty_name 11 based char(32) level 2 packed packed unaligned dcl 12-54 set ref 229* 273* 293* 297 302* 327* 374* 396* 462* 466* 482 483* 665 681* 722* 734* 741* reverse builtin function dcl 167 ref 637 ring 5(18) based fixed bin(17,0) level 3 packed packed unaligned dcl 10-7 set ref 245 256* rtrim builtin function dcl 167 ref 682 682 sc_process_command_line_ 000054 constant entry external dcl 138 ref 450 sc_stat_$admin_sci_ptr 000112 external static pointer dcl 14-45 set ref 314 549 552* 553* sc_stat_$mc_ansp 000114 external static pointer dcl 14-45 ref 205 215 217 662 sc_stat_$shutdown_typed 000116 external static bit(1) dcl 14-62 ref 459 sc_subsystem_info based structure level 1 dcl 15-23 sc_subsystem_info_ptr 000672 automatic pointer dcl 15-22 set ref 552* 553 sci_ptr 26 based pointer level 2 dcl 12-54 set ref 314 314 321* 450* 543 546* 546* 549 549 sender 4 based bit(36) level 2 dcl 10-7 set ref 223 245 256* service_type 32(18) based fixed bin(17,0) level 2 packed packed unaligned dcl 6-72 ref 478 493 set_term_type_info based structure level 1 dcl 16-8 signal_type based char(8) packed unaligned dcl 105 ref 225 signed_on 0(06) based bit(1) level 3 packed packed unaligned dcl 12-54 ref 543 slave_dial 50(13) based bit(1) level 4 packed packed unaligned dcl 6-72 ref 499 ssu_$abort_line 000056 constant entry external dcl 140 ref 321 ssu_$get_info_ptr 000060 constant entry external dcl 141 ref 546 546 552 state 000730 automatic fixed bin(17,0) dcl 633 set ref 641* 642 substr builtin function dcl 167 ref 396 396 407 407 432 640 sys_log_ 000066 constant entry external dcl 147 ref 273 396 462 734 sys_log_$error_log 000070 constant entry external dcl 148 ref 792 795 815 818 824 term_type 2 000612 automatic char(32) level 2 packed packed unaligned dcl 96 set ref 708* terminal_info based structure level 1 dcl 19-6 terminal_info_version constant fixed bin(17,0) initial dcl 19-16 ref 403 709 time parameter fixed bin(71,0) dcl 579 set ref 576 581* 584 587* timed_io_$get_chars 000040 constant entry external dcl 126 ref 581 timed_io_$get_line 000042 constant entry external dcl 128 ref 587 timed_io_$put_chars 000044 constant entry external dcl 130 ref 608 timer_manager_$alarm_wakeup 000072 constant entry external dcl 149 ref 443 timer_manager_$reset_alarm_wakeup 000074 constant entry external dcl 151 ref 437 tra_vec 74(18) based fixed bin(17,0) level 2 in structure "cdte" packed packed unaligned dcl 6-72 in procedure "mc_tty_" set ref 497* tra_vec 30 based fixed bin(17,0) level 2 in structure "mc_ate" dcl 12-54 in procedure "mc_tty_" set ref 236* 273 283 286 329 331* 346 378* 382* 390 392* 463* 466 511* 531* 684* trace 102 based bit(1) level 2 dcl 12-25 ref 273 396 734 ttt_info_$decode_answerback 000050 constant entry external dcl 134 ref 407 ttt_info_$default_term_type 000046 constant entry external dcl 132 ref 717 tty_state 000632 automatic fixed bin(17,0) dcl 97 set ref 285* 309 309 310 348 348 349 type 0(28) based fixed bin(8,0) level 2 packed packed unsigned unaligned dcl 13-22 set ref 269* type_to_set 001002 automatic char(32) packed unaligned dcl 692 in procedure "SET_TERM_TYPE" set ref 697* 699 701* 703* 717* 731 734* type_to_set 000633 automatic char(32) packed unaligned dcl 98 in procedure "mc_tty_" set ref 399* 407* 414* 415* unspec builtin function dcl 167 set ref 402* 706* verify builtin function dcl 167 ref 432 version 000612 automatic fixed bin(17,0) level 2 in structure "TI" dcl 96 in procedure "mc_tty_" set ref 403* 709* version 000600 automatic fixed bin(17,0) level 2 in structure "STTI" dcl 95 in procedure "mc_tty_" set ref 730* virtual based bit(1) level 3 packed packed unaligned dcl 12-54 set ref 229* 293* 302* virtual_tty_name 1 based char(32) level 2 packed packed unaligned dcl 12-54 set ref 229* 293* 302* wakeup_event 000643 automatic fixed bin(17,0) dcl 99 set ref 220* 251* 253* 269 269* 273 280 286 302 310 310 310* 314 324 324 327 340 343 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ABSQ_METER internal static fixed bin(17,0) initial dcl 3-28 ABS_TRYLOG_METER internal static fixed bin(17,0) initial dcl 3-35 ACCTUP_METER internal static fixed bin(17,0) initial dcl 3-26 ACTIVE internal static fixed bin(17,0) initial dcl 6-272 ACTIVE_VALUES internal static char(18) initial array dcl 9-86 ADMIN_METER internal static fixed bin(17,0) initial dcl 3-32 ANS_SERVICE internal static fixed bin(17,0) initial dcl 6-259 ASINIT_METER internal static fixed bin(17,0) initial dcl 3-19 AS_METER_NAMES internal static char(8) initial array packed unaligned dcl 3-43 AUM_METER internal static fixed bin(17,0) initial dcl 3-22 AU_METER internal static fixed bin(17,0) initial dcl 3-23 CDT_version internal static fixed bin(17,0) initial dcl 6-39 CDT_version_5 internal static fixed bin(17,0) initial dcl 6-38 CHANNEL_DELETED internal static fixed bin(17,0) initial dcl 6-288 COMMAND_METER internal static fixed bin(17,0) initial dcl 3-30 CPG_METER internal static fixed bin(17,0) initial dcl 3-24 CRASH internal static fixed bin(17,0) initial dcl 18-7 DIALS_ALLOWED internal static bit(15) initial dcl 8-29 DIALS_DENIED internal static bit(15) initial dcl 8-29 DIALUP_METER internal static fixed bin(17,0) initial dcl 3-20 DIAL_OUT_SERVICE internal static fixed bin(17,0) initial dcl 6-259 DIAL_SERVICE internal static fixed bin(17,0) initial dcl 6-259 DN355 internal static fixed bin(17,0) initial dcl 7-19 DN6600 internal static fixed bin(17,0) initial dcl 7-19 DN6670 internal static fixed bin(17,0) initial dcl 7-19 DN7100 internal static fixed bin(17,0) initial dcl 7-19 DPG_METER internal static fixed bin(17,0) initial dcl 3-25 DSA_ATTENTION_MSG internal static fixed bin(8,0) initial unsigned dcl 13-83 DSA_DATA_ATTENTION_MSG internal static fixed bin(8,0) initial unsigned dcl 13-84 in procedure "mc_tty_" DSA_DATA_ATTENTION_MSG internal static fixed bin(8,0) initial unsigned dcl 1-84 in procedure "decode_event_type" DSA_DATA_INPUT_MSG internal static fixed bin(8,0) initial unsigned dcl 13-100 DSA_DATA_OUTPUT_MSG internal static fixed bin(8,0) initial unsigned dcl 13-101 DSA_DEMAND_RELEASE_SRU_MSG internal static fixed bin(8,0) initial unsigned dcl 13-85 in procedure "mc_tty_" DSA_DEMAND_RELEASE_SRU_MSG internal static fixed bin(8,0) initial unsigned dcl 1-85 in procedure "decode_event_type" DSA_DEMAND_TURN_ACK_MSG internal static fixed bin(8,0) initial unsigned dcl 1-87 in procedure "decode_event_type" DSA_DEMAND_TURN_ACK_MSG internal static fixed bin(8,0) initial unsigned dcl 13-87 in procedure "mc_tty_" DSA_DEMAND_TURN_MSG internal static fixed bin(8,0) initial unsigned dcl 1-86 in procedure "decode_event_type" DSA_DEMAND_TURN_MSG internal static fixed bin(8,0) initial unsigned dcl 13-86 in procedure "mc_tty_" DSA_ESTABLISHMENT_MSG internal static fixed bin(8,0) initial unsigned dcl 13-97 DSA_MSG_TYPE_TO_PNAME internal static char(20) initial array packed unaligned dcl 13-103 DSA_NETWORK_TYPE internal static fixed bin(4,0) initial unsigned dcl 13-35 DSA_PURGE_MSG internal static fixed bin(8,0) initial unsigned dcl 13-88 in procedure "mc_tty_" DSA_PURGE_MSG internal static fixed bin(8,0) initial unsigned dcl 1-88 in procedure "decode_event_type" DSA_RECOVER_ACK_MSG internal static fixed bin(8,0) initial unsigned dcl 1-90 in procedure "decode_event_type" DSA_RECOVER_ACK_MSG internal static fixed bin(8,0) initial unsigned dcl 13-90 in procedure "mc_tty_" DSA_RECOVER_MSG internal static fixed bin(8,0) initial unsigned dcl 1-89 in procedure "decode_event_type" DSA_RECOVER_MSG internal static fixed bin(8,0) initial unsigned dcl 13-89 in procedure "mc_tty_" DSA_RELEASE_SRU_MSG internal static fixed bin(8,0) initial unsigned dcl 1-91 in procedure "decode_event_type" DSA_RELEASE_SRU_MSG internal static fixed bin(8,0) initial unsigned dcl 13-91 in procedure "mc_tty_" DSA_RESUME_ACK_MSG internal static fixed bin(8,0) initial unsigned dcl 13-93 in procedure "mc_tty_" DSA_RESUME_ACK_MSG internal static fixed bin(8,0) initial unsigned dcl 1-93 in procedure "decode_event_type" DSA_RESUME_MSG internal static fixed bin(8,0) initial unsigned dcl 13-92 in procedure "mc_tty_" DSA_RESUME_MSG internal static fixed bin(8,0) initial unsigned dcl 1-92 in procedure "decode_event_type" DSA_SUSPEND_ACK_MSG internal static fixed bin(8,0) initial unsigned dcl 13-95 in procedure "mc_tty_" DSA_SUSPEND_ACK_MSG internal static fixed bin(8,0) initial unsigned dcl 1-95 in procedure "decode_event_type" DSA_SUSPEND_MSG internal static fixed bin(8,0) initial unsigned dcl 13-94 in procedure "mc_tty_" DSA_SUSPEND_MSG internal static fixed bin(8,0) initial unsigned dcl 1-94 in procedure "decode_event_type" DSA_TERMINATED_MSG internal static fixed bin(8,0) initial unsigned dcl 1-98 in procedure "decode_event_type" DSA_TERMINATED_MSG internal static fixed bin(8,0) initial unsigned dcl 13-98 in procedure "mc_tty_" DSA_TERM_ABNORMAL_MSG internal static fixed bin(8,0) initial unsigned dcl 13-96 DSA_UNSPECIFIED_MSG internal static fixed bin(8,0) initial unsigned dcl 13-82 DSA_USER_UNASSIGN_MSG internal static fixed bin(8,0) initial unsigned dcl 1-99 in procedure "decode_event_type" DSA_USER_UNASSIGN_MSG internal static fixed bin(8,0) initial unsigned dcl 13-99 in procedure "mc_tty_" DUM_METER internal static fixed bin(17,0) initial dcl 3-21 FIXPDT_METER internal static fixed bin(17,0) initial dcl 3-34 FNP_BOOT internal static fixed bin(17,0) initial dcl 6-298 FNP_DOWN internal static fixed bin(17,0) initial dcl 6-298 FNP_FREE internal static fixed bin(17,0) initial dcl 6-298 FNP_UNKNOWN internal static fixed bin(17,0) initial dcl 6-298 FTP_SERVICE internal static fixed bin(17,0) initial dcl 6-259 INACTIVE internal static fixed bin(17,0) initial dcl 6-272 INSTALL_METER internal static fixed bin(17,0) initial dcl 3-27 JUST_HUNGUP internal static bit(15) initial dcl 8-29 JUST_LOG internal static fixed bin(17,0) initial dcl 18-7 LOG internal static fixed bin(17,0) initial dcl 18-7 MAX_DSA_EVENT_MSG_TYPE internal static fixed bin(17,0) initial dcl 13-80 MAX_MCS_EVENT_MSG_TYPE internal static fixed bin(17,0) initial dcl 13-46 MCS_DIALOUT_MSG internal static fixed bin(17,0) initial dcl 1-54 in procedure "decode_event_type" MCS_DIALOUT_MSG internal static fixed bin(17,0) initial dcl 13-54 in procedure "mc_tty_" MCS_DIALUP_MSG internal static fixed bin(17,0) initial dcl 13-50 MCS_HANGUP_MSG internal static fixed bin(17,0) initial dcl 13-52 MCS_LINE_STATUS_MSG internal static fixed bin(17,0) initial dcl 13-62 MCS_MASKED_MSG internal static fixed bin(17,0) initial dcl 13-64 MCS_MSG_TYPE_TO_PNAME internal static char(20) initial array packed unaligned dcl 13-67 MCS_NETWORK_TYPE internal static fixed bin(4,0) initial unsigned dcl 13-34 MCS_QUIT_MSG internal static fixed bin(17,0) initial dcl 13-56 MCS_READ_MSG internal static fixed bin(17,0) initial dcl 13-58 MCS_UNSPECIFIED_MSG internal static fixed bin(17,0) initial dcl 13-48 MCS_WRITE_MSG internal static fixed bin(17,0) initial dcl 13-60 MC_WAIT_COMMAND internal static fixed bin(17,0) initial dcl 12-103 MOWSE_NETWORK_TYPE internal static fixed bin(4,0) initial unsigned dcl 1-36 in procedure "decode_event_type" MOWSE_NETWORK_TYPE internal static fixed bin(4,0) initial unsigned dcl 13-36 in procedure "mc_tty_" MPX_BOOT internal static fixed bin(17,0) initial dcl 6-306 MPX_DOWN internal static fixed bin(17,0) initial dcl 6-306 MPX_FREE internal static fixed bin(17,0) initial dcl 6-306 MPX_SERVICE internal static fixed bin(17,0) initial dcl 6-259 MPX_UNKNOWN internal static fixed bin(17,0) initial dcl 6-306 MPX_UP internal static fixed bin(17,0) initial dcl 6-306 NETUP_METER internal static fixed bin(17,0) initial dcl 3-37 NETWORK_TYPE_VALUES internal static varying char(8) initial array dcl 13-38 in procedure "mc_tty_" NETWORK_TYPE_VALUES internal static varying char(8) initial array dcl 1-38 in procedure "decode_event_type" NET_EVENT_MESSAGE_VERSION_1 internal static bit(2) initial packed unaligned dcl 13-20 in procedure "mc_tty_" NET_EVENT_MESSAGE_VERSION_1 internal static bit(2) initial packed unaligned dcl 1-20 in procedure "decode_event_type" NOT_CONFIGURED internal static fixed bin(17,0) initial dcl 6-280 NOW_DIALED internal static fixed bin(17,0) initial dcl 9-76 NOW_DIALED_OUT internal static fixed bin(17,0) initial dcl 9-76 NOW_DIALING internal static fixed bin(17,0) initial dcl 9-76 NOW_FREE internal static fixed bin(17,0) initial dcl 9-76 NOW_HAS_PROCESS internal static fixed bin(17,0) initial dcl 9-76 NOW_LISTENING internal static fixed bin(17,0) initial dcl 9-76 NOW_LOGGED_IN internal static fixed bin(17,0) initial dcl 9-76 PREEMPT_BUMPED internal static fixed bin(17,0) initial dcl 9-132 PREEMPT_BUMPED_NO_TERM internal static fixed bin(17,0) initial dcl 9-132 PREEMPT_LOAD_CTL internal static fixed bin(17,0) initial dcl 9-132 PREEMPT_TERMSGNL_RECEIVED internal static fixed bin(17,0) initial dcl 9-132 PREEMPT_TERM_SENT internal static fixed bin(17,0) initial dcl 9-132 PREEMPT_UNBUMP internal static fixed bin(17,0) initial dcl 9-132 PREEMPT_UNBUMP_IGNORE_ALARM internal static fixed bin(17,0) initial dcl 9-132 PREEMPT_VALUES internal static varying char(28) initial array dcl 9-142 PT_ALARM internal static fixed bin(17,0) initial dcl 9-106 PT_BUMP internal static fixed bin(17,0) initial dcl 9-106 PT_DESTROY_REQUEST internal static fixed bin(17,0) initial dcl 9-106 PT_DETACH internal static fixed bin(17,0) initial dcl 9-106 PT_FPE internal static fixed bin(17,0) initial dcl 9-106 PT_HANGUP internal static fixed bin(17,0) initial dcl 9-106 PT_LOGOUT internal static fixed bin(17,0) initial dcl 9-106 PT_NEW_PROC_AUTH internal static fixed bin(17,0) initial dcl 9-106 PT_NEW_PROC_REQUEST internal static fixed bin(17,0) initial dcl 9-106 PT_OPERATOR_TERMINATE internal static fixed bin(17,0) initial dcl 9-106 PT_SHUTDOWN internal static fixed bin(17,0) initial dcl 9-106 PT_UNBUMP internal static fixed bin(17,0) initial dcl 9-106 SAC_METER internal static fixed bin(17,0) initial dcl 3-31 SLAVE_SERVICE internal static fixed bin(17,0) initial dcl 6-259 SL_INFO_arg_given_in_structure internal static fixed bin(17,0) initial dcl 17-69 SL_INFO_arg_not_given internal static fixed bin(17,0) initial dcl 17-69 SL_INFO_as_mode internal static fixed bin(17,0) initial dcl 17-65 SL_INFO_command_mode internal static fixed bin(17,0) initial dcl 17-65 SL_INFO_version_1 internal static char(8) initial packed unaligned dcl 17-62 SL_LOG internal static fixed bin(17,0) initial dcl 17-14 SL_LOG_BEEP internal static fixed bin(17,0) initial dcl 17-14 SL_LOG_CRASH internal static fixed bin(17,0) initial dcl 17-14 SL_TYPE internal static fixed bin(17,0) initial dcl 17-14 SL_TYPE_BEEP internal static fixed bin(17,0) initial dcl 17-14 SL_TYPE_CRASH internal static fixed bin(17,0) initial dcl 17-14 SSU_METER internal static fixed bin(17,0) initial dcl 3-33 STATE_VALUES internal static char(15) initial array dcl 9-70 SYSERR_COVERT_CHANNEL internal static fixed bin(17,0) initial dcl 18-7 SYSERR_CRASH_SYSTEM internal static fixed bin(17,0) initial dcl 18-7 SYSERR_LOG_OR_DISCARD internal static fixed bin(17,0) initial dcl 18-7 SYSERR_LOG_OR_PRINT internal static fixed bin(17,0) initial dcl 18-7 SYSERR_PRINT_ON_CONSOLE internal static fixed bin(17,0) initial dcl 18-7 SYSERR_PRINT_WITH_ALARM internal static fixed bin(17,0) initial dcl 18-7 SYSERR_RING1_ERROR internal static fixed bin(17,0) initial dcl 18-7 SYSERR_SUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 18-7 SYSERR_SYSTEM_ERROR internal static fixed bin(17,0) initial dcl 18-7 SYSERR_TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 18-7 SYSERR_UNSUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 18-7 TAG_ABSENTEE internal static char(1) initial packed unaligned dcl 9-93 TAG_DAEMON internal static char(1) initial packed unaligned dcl 9-93 TAG_INTERACTIVE internal static char(1) initial packed unaligned dcl 9-93 TAG_PROXY internal static char(1) initial packed unaligned dcl 9-93 TAG_UFT internal static char(1) initial packed unaligned dcl 9-93 TANDD_SERVICE internal static fixed bin(17,0) initial dcl 6-259 TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 18-7 TRA_VEC_VALUES internal static char(32) initial array dcl 9-54 TTY_DIALED internal static fixed bin(17,0) initial dcl 9-64 TTY_HUNG internal static fixed bin(17,0) initial dcl 9-64 TTY_KNOWN internal static fixed bin(17,0) initial dcl 9-64 TTY_MASKED internal static fixed bin(17,0) initial dcl 9-64 TTY_STATE_HUNG_UP internal static fixed bin(17,0) initial dcl 20-4 TTY_STATE_LISTENING internal static fixed bin(17,0) initial dcl 20-4 TTY_STATE_MASKED internal static fixed bin(17,0) initial dcl 20-4 WAIT_ANSWERBACK internal static fixed bin(17,0) initial dcl 9-25 WAIT_BEFORE_HANGUP internal static fixed bin(17,0) initial dcl 9-25 WAIT_CONNECT_REQUEST internal static fixed bin(17,0) initial dcl 9-25 WAIT_DELETE_CHANNEL internal static fixed bin(17,0) initial dcl 9-25 WAIT_DESTROY_REQUEST internal static fixed bin(17,0) initial dcl 9-25 WAIT_DETACH internal static fixed bin(17,0) initial dcl 9-25 WAIT_DIALUP internal static fixed bin(17,0) initial dcl 9-25 WAIT_DIAL_OUT internal static fixed bin(17,0) initial dcl 9-25 WAIT_DIAL_RELEASE internal static fixed bin(17,0) initial dcl 9-25 WAIT_DISCARD_WAKEUPS internal static fixed bin(17,0) initial dcl 9-25 WAIT_FIN_PRIV_ATTACH internal static fixed bin(17,0) initial dcl 9-25 WAIT_FIN_TANDD_ATTACH internal static fixed bin(17,0) initial dcl 9-25 WAIT_HANGUP internal static fixed bin(17,0) initial dcl 9-25 WAIT_LOGIN_ARGS internal static fixed bin(17,0) initial dcl 9-25 WAIT_LOGIN_LINE internal static fixed bin(17,0) initial dcl 9-25 WAIT_LOGOUT internal static fixed bin(17,0) initial dcl 9-25 WAIT_LOGOUT_HOLD internal static fixed bin(17,0) initial dcl 9-25 WAIT_LOGOUT_SIG internal static fixed bin(17,0) initial dcl 9-25 WAIT_NEW_PASSWORD internal static fixed bin(17,0) initial dcl 9-25 WAIT_NEW_PROC internal static fixed bin(17,0) initial dcl 9-25 WAIT_NEW_PROC_REQUEST internal static fixed bin(17,0) initial dcl 9-25 WAIT_OLD_PASSWORD internal static fixed bin(17,0) initial dcl 9-25 WAIT_PASSWORD internal static fixed bin(17,0) initial dcl 9-25 WAIT_REMOVE internal static fixed bin(17,0) initial dcl 9-25 WAIT_SLAVE_REQUEST internal static fixed bin(17,0) initial dcl 9-25 WAIT_TANDD_HANGUP internal static fixed bin(17,0) initial dcl 9-25 as_data_$BS external static char(1) dcl 2-21 as_data_$CR external static char(1) dcl 2-22 as_data_$abs_dim external static char(32) packed unaligned dcl 2-23 as_data_$acct_update_priority external static fixed bin(17,0) dcl 2-24 as_data_$acsdir external static char(168) packed unaligned dcl 2-25 as_data_$ansp external static pointer dcl 2-26 as_data_$as_procid external static bit(36) dcl 2-27 as_data_$as_ring external static fixed bin(3,0) dcl 2-28 as_data_$as_tty automatic char(6) packed unaligned dcl 2-29 as_data_$asmtp external static pointer dcl 2-30 as_data_$autp external static pointer dcl 2-31 as_data_$buzzardp external static pointer dcl 2-32 as_data_$cdtp external static pointer dcl 2-33 as_data_$debug_flag external static bit(1) dcl 2-84 as_data_$default_weight external static fixed bin(35,0) dcl 2-34 as_data_$devtabp external static pointer dcl 2-35 as_data_$dft_user_ring external static fixed bin(3,0) dcl 2-36 as_data_$dutp external static pointer dcl 2-37 as_data_$g115_dim external static char(32) packed unaligned dcl 2-38 as_data_$lct_initialized external static bit(1) dcl 2-39 as_data_$lct_size external static fixed bin(17,0) dcl 2-40 as_data_$login_args external static structure level 1 dcl 2-62 as_data_$login_words external static fixed bin(17,0) dcl 2-77 as_data_$ls_message_buffer_cur_lth external static fixed bin(18,0) dcl 2-86 as_data_$ls_message_buffer_max_lth external static fixed bin(18,0) dcl 2-87 as_data_$ls_message_buffer_ptr external static pointer dcl 2-88 as_data_$ls_request_server_info_ptr external static pointer dcl 2-85 as_data_$max_user_ring external static fixed bin(3,0) dcl 2-41 as_data_$mgtp external static pointer dcl 2-42 as_data_$mrd_dim external static char(32) packed unaligned dcl 2-43 as_data_$ntty_dim external static char(32) packed unaligned dcl 2-44 as_data_$pdtdir external static char(168) packed unaligned dcl 2-45 as_data_$pit_ptr external static pointer dcl 2-46 as_data_$rcpdir external static char(168) packed unaligned dcl 2-47 as_data_$request_priority external static fixed bin(17,0) dcl 2-48 as_data_$rs_ptrs external static pointer array dcl 2-49 as_data_$rtdtp external static pointer dcl 2-50 as_data_$sat_htp external static pointer dcl 2-51 as_data_$satp external static pointer dcl 2-52 as_data_$signal_types external static structure level 1 dcl 2-67 as_data_$suffix external static char(2) array packed unaligned dcl 2-53 as_data_$sysdir external static char(168) packed unaligned dcl 2-54 as_data_$system_signal_types external static structure level 1 dcl 2-72 as_data_$teens_suffix external static char(2) array packed unaligned dcl 2-55 as_data_$terminet_tabs_string external static varying char(144) dcl 2-56 as_data_$tty_dim external static char(32) packed unaligned dcl 2-57 as_data_$update_priority external static fixed bin(17,0) dcl 2-58 as_data_$version external static char(8) packed unaligned dcl 2-59 as_data_$whoptr external static pointer dcl 2-60 as_data_login_words based structure level 1 dcl 2-77 cdt based structure level 1 dcl 6-44 cdtp automatic pointer dcl 6-41 dial_event_message_handle based bit(54) dcl 8-23 fnp_models internal static fixed bin(17,0) initial array dcl 7-28 fnp_types internal static char(8) initial array packed unaligned dcl 7-25 fnpep automatic pointer dcl 6-41 generic_destination based char(32) packed unaligned dcl 6-195 iox_$attach_loud 000000 constant entry external dcl 11-8 iox_$attach_name 000000 constant entry external dcl 11-8 iox_$attach_ptr 000000 constant entry external dcl 11-8 iox_$close 000000 constant entry external dcl 11-8 iox_$close_file 000000 constant entry external dcl 11-8 iox_$delete_record 000000 constant entry external dcl 11-8 iox_$destroy_iocb 000000 constant entry external dcl 11-8 iox_$detach 000000 constant entry external dcl 11-8 iox_$detach_iocb 000000 constant entry external dcl 11-8 iox_$err_no_operation 000000 constant entry external dcl 11-8 iox_$err_not_attached 000000 constant entry external dcl 11-8 iox_$err_not_closed 000000 constant entry external dcl 11-8 iox_$err_not_open 000000 constant entry external dcl 11-8 iox_$error_output external static pointer dcl 11-41 iox_$find_iocb 000000 constant entry external dcl 11-8 iox_$find_iocb_n 000000 constant entry external dcl 11-8 iox_$get_chars 000000 constant entry external dcl 11-8 iox_$get_line 000000 constant entry external dcl 11-8 iox_$look_iocb 000000 constant entry external dcl 11-8 iox_$modes 000000 constant entry external dcl 11-8 iox_$move_attach 000000 constant entry external dcl 11-8 iox_$open 000000 constant entry external dcl 11-8 iox_$open_file 000000 constant entry external dcl 11-8 iox_$position 000000 constant entry external dcl 11-8 iox_$propagate 000000 constant entry external dcl 11-8 iox_$put_chars 000000 constant entry external dcl 11-8 iox_$read_key 000000 constant entry external dcl 11-8 iox_$read_length 000000 constant entry external dcl 11-8 iox_$read_record 000000 constant entry external dcl 11-8 iox_$rewrite_record 000000 constant entry external dcl 11-8 iox_$seek_key 000000 constant entry external dcl 11-8 iox_$user_input external static pointer dcl 11-41 iox_$user_io external static pointer dcl 11-41 iox_$user_output external static pointer dcl 11-41 iox_$write_record 000000 constant entry external dcl 11-8 mpxep automatic pointer dcl 6-41 net_event_message based structure level 1 dcl 1-22 net_event_message_arg automatic fixed bin(71,0) dcl 1-19 recursion_possible internal static bit(18) initial packed unaligned dcl 3-39 sc_request_flags based structure level 1 packed packed unaligned dcl 15-55 sc_rf_ptr automatic pointer dcl 15-54 sc_ss_area based area(1024) dcl 15-50 sc_stat_$Go external static bit(1) dcl 14-62 sc_stat_$Go_typed external static bit(1) dcl 14-62 sc_stat_$Multics external static bit(1) dcl 14-62 sc_stat_$Multics_typed external static bit(1) dcl 14-62 sc_stat_$Star_typed external static bit(1) dcl 14-62 sc_stat_$admin_listener_exit_label external static label variable dcl 14-34 sc_stat_$admin_listener_switch external static bit(1) dcl 14-62 sc_stat_$admin_log_iocb external static pointer dcl 14-45 sc_stat_$admin_log_write_ptr external static pointer dcl 14-45 sc_stat_$as_log_write_ptr external static pointer dcl 14-45 sc_stat_$did_part1 external static bit(1) dcl 14-62 sc_stat_$did_part2 external static bit(1) dcl 14-62 sc_stat_$did_part3 external static bit(1) dcl 14-62 sc_stat_$exec_access_name external static char(32) packed unaligned dcl 14-15 sc_stat_$info_dir external static char(168) packed unaligned dcl 14-21 sc_stat_$initzer_ttyp external static pointer dcl 14-45 sc_stat_$log_dir external static char(168) packed unaligned dcl 14-21 sc_stat_$master_abort_label external static label variable dcl 14-34 sc_stat_$master_channel external static char(6) dcl 14-29 sc_stat_$master_iocb external static pointer dcl 14-45 sc_stat_$master_sci_ptr external static pointer dcl 14-45 sc_stat_$mc_acs_dir external static char(168) packed unaligned dcl 14-21 sc_stat_$mc_iocb external static pointer dcl 14-45 sc_stat_$mc_is_on external static bit(1) dcl 14-62 sc_stat_$no_operator_login external static bit(1) dcl 14-62 sc_stat_$sv1_iocb external static pointer dcl 14-45 sc_stat_$sv2_iocb external static pointer dcl 14-45 sc_stat_$sv3_iocb external static pointer dcl 14-45 sc_stat_$sysdir external static char(168) packed unaligned dcl 14-21 sc_stat_$system_shutdown_label external static label variable dcl 14-34 sc_stat_$test_mode external static bit(1) dcl 14-62 sc_stat_$unidentified_access_name external static char(32) packed unaligned dcl 14-15 sc_stat_$vchn_requires_accept external static bit(1) dcl 14-62 sl_info automatic structure level 1 dcl 17-24 sl_info_code_msg internal static structure level 1 dcl 17-187 sl_info_msg internal static structure level 1 dcl 17-214 sl_info_sev_code_label_msg internal static structure level 1 dcl 17-161 sl_info_sev_code_msg internal static structure level 1 dcl 17-82 sl_info_sev_coded_msg internal static structure level 1 dcl 17-134 sl_info_sev_msg internal static structure level 1 dcl 17-108 stti_version_1 internal static fixed bin(17,0) initial dcl 16-5 sttip automatic pointer dcl 16-6 supported_fnp internal static bit(1) initial array packed unaligned dcl 7-31 terminal_info_ptr automatic pointer dcl 19-15 NAMES DECLARED BY EXPLICIT CONTEXT. FLUSH_LINE_STATUS 005110 constant entry internal dcl 747 ref 343 525 GET_TERM_TYPE 004566 constant label dcl 706 GREET 004423 constant entry internal dcl 676 ref 384 417 READ_COMMAND 002737 constant label dcl 425 ref 241 READ_COMMON 004151 constant label dcl 588 ref 582 SET_TERM_TYPE 004515 constant entry internal dcl 688 ref 357 415 SKIP_ANSWERBACK 002451 constant label dcl 382 ref 369 TTP_ERROR 004666 constant label dcl 718 ref 714 check_ow 003733 constant label dcl 562 ref 340 428 decode_event_type 005212 constant entry internal dcl 761 ref 269 error_exit 003551 constant label dcl 535 ref 514 errx 004255 constant entry internal dcl 619 ref 207 215 217 259 get_chars 004066 constant entry internal dcl 576 ref 393 get_line 004120 constant entry internal dcl 584 ref 427 listen_if_mpx_up 004320 constant entry internal dcl 629 ref 332 351 512 532 mc_tty_ 001116 constant entry external dcl 15 ref 670 simulated_wakeup 004000 constant entry external dcl 652 stim 003737 constant label dcl 562 ref 464 tty_err 003500 constant label dcl 522 ref 376 593 614 725 743 755 tty_hung 003057 constant label dcl 459 ref 337 591 612 711 737 ttydone 003766 constant label dcl 570 ref 232 280 283 298 306 334 353 379 507 526 624 write 004165 constant entry internal dcl 599 ref 445 682 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 6556 6676 6067 6566 Length 7604 6067 120 671 466 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME mc_tty_ 932 external procedure is an external procedure. get_chars internal procedure shares stack frame of external procedure mc_tty_. write 86 internal procedure is called during a stack extension. errx internal procedure shares stack frame of external procedure mc_tty_. listen_if_mpx_up internal procedure shares stack frame of external procedure mc_tty_. GREET internal procedure shares stack frame of external procedure mc_tty_. SET_TERM_TYPE internal procedure shares stack frame of external procedure mc_tty_. FLUSH_LINE_STATUS internal procedure shares stack frame of external procedure mc_tty_. decode_event_type internal procedure shares stack frame of external procedure mc_tty_. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME mc_tty_ 000100 code mc_tty_ 000101 errmsg mc_tty_ 000163 input_buffer mc_tty_ 000556 line_status_space mc_tty_ 000560 length_read_in mc_tty_ 000561 ls_wakeup mc_tty_ 000562 message mc_tty_ 000564 old_operator_name mc_tty_ 000574 p1 mc_tty_ 000576 perm_mc_service mc_tty_ 000577 read_answerback mc_tty_ 000600 STTI mc_tty_ 000612 TI mc_tty_ 000632 tty_state mc_tty_ 000633 type_to_set mc_tty_ 000643 wakeup_event mc_tty_ 000644 local_event_call_info mc_tty_ 000654 i mc_tty_ 000656 cdtep mc_tty_ 000660 dial_event_message_ptr mc_tty_ 000662 event_call_info_ptr mc_tty_ 000664 mc_ansp mc_tty_ 000666 mc_atep mc_tty_ 000670 net_event_message_arg mc_tty_ 000672 sc_subsystem_info_ptr mc_tty_ 000720 mpx_name listen_if_mpx_up 000730 state listen_if_mpx_up 000731 i listen_if_mpx_up 000732 codex listen_if_mpx_up 000742 message GREET 001002 type_to_set SET_TERM_TYPE 001020 code FLUSH_LINE_STATUS 001030 event_type decode_event_type THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_e_as alloc_char_temp call_ent_var call_ext_in call_ext_out_desc call_ext_out call_int_this_desc return_mac tra_ext_1 shorten_stack ext_entry int_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. as_$meter_enter as_$meter_exit astty_$tty_event hcs_$wakeup hphcs_$syserr hphcs_$syserr_error_code ioa_$rs iox_$control ipc_$drain_chn lg_ctl_$logout_channel lg_ctl_$logout_operator mc_commands_$create_iocb mc_commands_$remove_tty mc_commands_$sign_out mc_con_rec_$check multiplexer_mgr_$state_mpx sc_process_command_line_ ssu_$abort_line ssu_$get_info_ptr sys_log_ sys_log_$error_log timed_io_$get_chars timed_io_$get_line timed_io_$put_chars timer_manager_$alarm_wakeup timer_manager_$reset_alarm_wakeup ttt_info_$decode_answerback ttt_info_$default_term_type THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$bad_arg error_table_$io_no_permission error_table_$line_status_pending error_table_$timeout error_table_$undefined_order_request sc_stat_$admin_sci_ptr sc_stat_$mc_ansp sc_stat_$shutdown_typed LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 15 001113 204 001123 205 001131 207 001135 210 001150 211 001154 212 001156 214 001160 215 001162 217 001200 220 001223 221 001225 223 001230 225 001235 227 001242 229 001247 232 001305 235 001306 236 001310 238 001312 241 001343 243 001344 245 001345 249 001356 250 001360 251 001362 253 001371 254 001373 256 001374 259 001452 262 001455 269 001460 273 001501 280 001554 283 001557 285 001563 286 001564 289 001576 290 001577 291 001610 293 001612 297 001655 298 001704 300 001705 302 001706 306 001755 309 001756 310 002007 314 002021 317 002036 318 002040 319 002066 321 002075 324 002123 327 002130 329 002163 331 002167 332 002171 334 002176 337 002177 340 002200 343 002202 346 002205 348 002211 349 002241 351 002246 353 002253 356 002254 357 002257 358 002262 360 002270 363 002276 365 002300 366 002334 368 002347 369 002400 372 002404 374 002406 376 002444 378 002445 379 002450 382 002451 384 002454 386 002455 388 002462 390 002463 392 002465 393 002467 394 002473 396 002475 399 002545 400 002551 402 002556 403 002561 404 002563 405 002617 407 002621 411 002665 413 002666 414 002667 415 002672 416 002675 417 002731 418 002732 425 002737 427 002740 428 002744 432 002746 435 002760 437 002764 438 002773 439 002776 441 002777 443 003001 445 003020 447 003032 449 003033 450 003036 451 003053 453 003056 459 003057 462 003062 463 003114 464 003117 466 003120 476 003155 478 003163 480 003172 482 003174 483 003223 487 003261 489 003265 490 003276 493 003335 494 003341 495 003342 496 003344 497 003346 498 003350 499 003352 501 003377 502 003401 503 003427 507 003466 511 003467 512 003472 514 003477 522 003500 525 003504 526 003505 528 003506 531 003541 532 003544 535 003551 537 003554 543 003603 545 003613 546 003635 549 003672 551 003704 552 003712 553 003723 562 003733 570 003766 572 003775 652 003776 659 004005 660 004011 661 004014 662 004016 663 004022 664 004033 665 004037 668 004047 669 004051 670 004052 671 004062 673 004063 674 004065 576 004066 581 004070 582 004117 584 004120 587 004122 588 004151 591 004156 593 004161 596 004163 599 004164 608 004200 610 004232 612 004240 614 004246 616 004254 619 004255 623 004266 624 004317 629 004320 637 004321 638 004333 640 004335 641 004342 642 004363 645 004422 676 004423 681 004424 682 004456 683 004506 684 004512 685 004514 688 004515 694 004526 697 004533 699 004541 701 004545 703 004556 706 004566 708 004571 709 004574 710 004576 711 004633 714 004637 717 004641 718 004664 722 004666 725 004730 730 004731 731 004733 732 004736 733 004750 734 004752 736 005010 737 005045 739 005051 741 005053 743 005106 745 005107 747 005110 752 005111 753 005114 754 005116 755 005151 757 005156 758 005157 759 005211 761 005212 773 005214 775 005224 777 005237 779 005244 781 005251 783 005256 785 005263 787 005270 789 005275 792 005302 795 005342 797 005377 799 005401 800 005402 802 005404 804 005417 806 005424 808 005431 810 005436 812 005443 815 005450 818 005510 820 005545 822 005547 824 005550 826 005605 828 005607 ----------------------------------------------------------- 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