/* BEGIN INCLUDE FILE...ls_validate_info.incl.pl1 */ /****^ HISTORY COMMENTS: 1) change(85-08-01,Coren), approve(87-07-14,MCR7679), audit(87-03-18,GDixon), install(87-08-04,MR12.1-1056): Initial coding. 2) change(87-03-30,GDixon), approve(87-07-14,MCR7679), audit(87-07-14,Parisek), install(87-08-04,MR12.1-1056): A) Add banner_last_checked element. B) Add wakeup loop counter elements. C) Add several new state values. 3) change(87-04-23,GDixon), approve(87-07-14,MCR7679), audit(87-07-14,Parisek), install(87-08-04,MR12.1-1056): Correct doubleword alignment of structure elements after change to user_connection_info. 4) change(87-05-07,GDixon), approve(87-07-14,MCR7679), audit(87-07-14,Parisek), install(87-08-04,MR12.1-1056): Correct login_timeout_check_required to correspond to new state field values. 5) change(87-05-18,GDixon), approve(87-07-14,MCR7679), audit(87-07-14,Parisek), install(87-08-04,MR12.1-1056): Add minimum_ring element. END HISTORY COMMENTS */ /* This include file defines the structure used internally by validate_user_ to keep track of various things needed by its several entrypoints. login_server_messages.incl.pl1 must be included also, to define user_connection_info. */ dcl ls_validate_info_ptr pointer; dcl 1 ls_validate_info aligned based (ls_validate_info_ptr), 2 version char (8), /* "lsviNNNN" */ 2 sci_ptr pointer, 2 cp_info_ptr pointer, /* -> ls_cp_info */ 2 connection_desc_ptr pointer, /* -> ls_connection_desc */ 2 options_ptr pointer, /* -> ls_validate_options */ 2 process_info_ptr pointer, /* -> ls_process_info */ 2 process_request_ptr pointer, /* pointer to "process_request" structure if one has been allocated */ 2 server_handle bit (72), /* handle used to read responses */ 2 initializer_handle bit (72), /* handle used in requests to identify connection */ 2 reply_channel fixed bin (71), /* event channel over which Initializer responds to as_requests */ 2 banner_checked_time fixed bin(71), /* time when greeting banner last checked for changes */ 2 wakeup_loop, /* wakeup loop counter information */ 3 real_execute_line entry (ptr, ptr, fixed bin(21), fixed bin(35)), /* real target of ssu_$execute_line */ 3 recent_wakeup_time fixed bin(71), /* time of last wakeup. */ 3 recent_wakeup_count fixed bin, /* number of wakeups received in the recent past. */ 2 state fixed bin, /* indicates what request or response expected next */ 2 last_request fixed bin, /* type of request user most recently entered */ 2 expected_response fixed bin, /* response expected from Initializer */ 2 n_disconnected_processes fixed bin, /* number of disconnected processes */ 2 process_number fixed bin, /* of relevant disconnected process */ 2 code fixed bin (35), /* used to indicate success or failure to top-level of subsystem */ 2 minimum_ring fixed bin, /* minimum ring in which connection works */ 2 user_connection_info like user_connection_info, /* defined in login_server_messages.incl.pl1 */ 2 person_id char (22), 2 project_id char (9), 2 dial_id char (22), 2 validation_failures fixed bin, /* number of times validation has been rejected */ 2 previous_login_info, /* for printing login message */ 3 time fixed bin (71), 3 terminal_type char (32), 3 terminal_id char (4), 2 flags, 3 connect_loop bit (1) unaligned, /* "1"b => in connect loop (as opposed to initial login sequence */ 3 brief bit (1) unaligned, /* "1"b => -brief specified on original request line */ 3 mask_needed bit (1) unaligned, /* "1"b => -no_printer_off */ 3 others_to_be_supplied bit (33) unaligned; /* Possible values for ls_validate_info.state. When adding states, you must also change login_time_check_required variable below. */ dcl (DISCONNECTED initial (0), /* connection broken for various reasons. */ JUST_CONNECTED initial (1), /* initial state, connection just made. */ AWAITING_INITIAL_REQUEST initial (2), /* start of login sequence */ AWAITING_LOGIN_ARGS initial (3), /* read login args when login typed. */ AWAITING_PASSWORD initial (4), /* read for password outstanding */ AWAITING_CONNECT_REQUEST initial (5), /* in connect loop */ AWAITING_INITIALIZER_RESPONSE initial (6), /* sent request to initializer */ USER_VALIDATED initial(7)) /* user connection has been validated. */ fixed bin internal static options (constant); dcl login_timeout_check_required (0:7) bit (1) aligned int static options(constant) initial( /*** 0 1 2 3 4 5 6 7 */ "0"b, "0"b, "1"b, "1"b, "1"b, "0"b, "0"b, "0"b); /* END INCLUDE FILE...ls_validate_info.incl.pl1 */ */ ----------------------------------------------------------- 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 */