COMPILATION LISTING OF SEGMENT pnt_notify_as_ Compiled by: Multics PL/I Compiler, Release 29, of July 28, 1986 Compiled at: Honeywell Multics Op. - System M Compiled on: 10/28/86 1519.9 mst Tue Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1985 * 4* * * 5* *********************************************************** */ 6 /* format: style5 */ 7 8 pnt_notify_as_: 9 procedure (P_person_id, P_code); 10 11 /**** This entry is called by the Ring-1 PNT software when it wishes to 12* inform the answering service of a PNT change. It's only arguments 13* are a user_id and a status code. */ 14 15 /* Parameters */ 16 17 dcl P_code fixed bin (35) parameter; 18 /* status code */ 19 dcl P_person_id char (*) parameter; 20 /* person_id whose PNT entry changed */ 21 22 /* Automatic */ 23 24 dcl code fixed bin (35) automatic; 25 /* status code */ 26 dcl 1 NPCI structure aligned 27 like asr_note_pnt_change_info; 28 /* info structure */ 29 30 /* Entries */ 31 32 dcl send_as_request_$no_block 33 entry (pointer, fixed binary, 34 bit (72) aligned, fixed binary (35)); 35 36 /* Builtin */ 37 38 dcl addr builtin; 39 dcl size builtin; 40 41 /* Program */ 42 43 code = 0; 44 45 NPCI.header.version = as_request_version_1; 46 NPCI.header.type = ASR_NOTE_PNT_CHANGE; 47 NPCI.header.reply_channel = 0; /* we don't care about a reply */ 48 NPCI.version = ASR_NPC_INFO_VERSION_1; 49 NPCI.person_id = P_person_id; 50 51 call send_as_request_$no_block (addr (NPCI), size (NPCI), (""b), code); 52 53 P_code = code; 54 return; 55 56 /* format: off */ 57 /* BEGIN INCLUDE FILE ... as_request_header.incl.pl1 */ 1 2 1 3 /* DESCRIPTION: 1 4* Answering Service request information. 1 5**/ 1 6 1 7 1 8 /****^ HISTORY COMMENTS: 1 9* 1) change(00-01-01,JRandom), approve(), audit(), install(): 1 10* Written by someone, at sometime. 1 11* 2) change(84-09-10,Tague), approve(), audit(), install(): 1 12* R. Michael Tague: Added ASR_BUMP_USER request. 1 13* 3) change(84-10-04,Margulies), approve(), audit(), install(): 1 14* BIM: ASR_ADMIN_COMMAND. 1 15* 4) change(85-01-23,Swenson), approve(), audit(), install(): 1 16* E. Swenson for ASR_NOTE_PNT_CHANGE. 1 17* 5) change(85-02-18,Margulies), approve(), audit(), install(): 1 18* BIM: ASR_DAEMON_COMMAND, ASR_COM_CHANNEL_INFO 1 19* 6) change(85-12-12,Lippard), approve(85-12-30,MCR7326), 1 20* audit(86-10-27,GDixon), install(86-10-28,MR12.0-1200): 1 21* Jim Lippard: Added ASR_ABS_COMMAND request. 1 22* END HISTORY COMMENTS */ 1 23 1 24 1 25 /* format: style4 */ 1 26 1 27 dcl as_request_version_1 fixed bin internal static initial (1) options (constant); 1 28 1 29 dcl ( 1 30 ASR_FIRST_TYPE initial (1), 1 31 ASR_DIAL_SERVER initial (1), 1 32 ASR_DIAL_OUT initial (2), 1 33 ASR_FPE_CAUSES_LOGOUT initial (3), 1 34 ASR_FPE_CAUSES_NEW_PROC initial (4), 1 35 ASR_PROC_TERM_NOTIFY initial (5), 1 36 ASR_BUMP_USER initial (6), 1 37 ASR_ADMIN_COMMAND initial (7), 1 38 ASR_NOTE_PNT_CHANGE initial (8), 1 39 ASR_DAEMON_COMMAND initial (9), 1 40 ASR_COM_CHANNEL_INFO initial (10), 1 41 ASR_ABS_COMMAND initial (11), 1 42 ASR_LAST_TYPE initial (11) 1 43 ) fixed bin internal static options (constant); 1 44 1 45 dcl ASR_DEFER_IN_ADMIN_MODE (1:11) bit (1) int static options (constant) 1 46 init ((6) (1) "0"b, "1"b, (4) (1) "0"b); 1 47 1 48 dcl ASR_REQUEST_NAMES (1:11) int static options (constant) 1 49 char (40) init ( 1 50 "Dial request", 1 51 "Dial out request", 1 52 "Logout on fatal process error", 1 53 "New process on fatal process error", 1 54 "Monitor process terminations", 1 55 "Bump user", 1 56 "Execute admin command", 1 57 "Note PNT change", 1 58 "Daemon command", 1 59 "Communications channel info", 1 60 "Absentee command"); 1 61 1 62 dcl 1 as_request_header based aligned, 1 63 2 version fixed bin, /* version number */ 1 64 2 type fixed bin, /* what to do */ 1 65 2 reply_channel fixed bin (71); /* who to tell */ 1 66 1 67 1 68 /* END INCLUDE FILE ... as_request_header.incl.pl1 */ 57 58 /* BEGIN INCLUDE FILE ... as_requests.incl.pl1 */ 2 2 /* DESCRIPTION: 2 3* This include file is the repository of as_request_ structures which are 2 4* not so complicated or arcane as to require their own include file. 2 5* It requires as_request_header.incl.pl1 2 6**/ 2 7 2 8 /* HISTORY: 2 9* Written by someone, at sometime. 2 10* Modified: 2 11* 09/10/84 by R. Michael Tague: Add the structure asr_bump_user_info 2 12* and asr_reply_bump_user. 2 13* 01/23/85 by E. Swenson: Add the asr_note_pnt_change_info structure. 2 14**/ 2 15 2 16 /* format: style4 */ 2 17 2 18 /*** return status from an as_request_ call. ***/ 2 19 2 20 dcl asr_replyp ptr; 2 21 dcl 1 asr_reply aligned based (asr_replyp), /* IPC status return for a.s. request */ 2 22 2 code fixed bin (35), /* standard error code */ 2 23 2 data bit (36); /* other data */ 2 24 2 25 /*** request to monitor process destructions, and the destruction notification ***/ 2 26 2 27 dcl asr_buzzard_info_version_1 char (8) init ("buzzard1") int static options (constant); 2 28 dcl asr_buzzard_infop ptr; 2 29 dcl 1 asr_buzzard_info aligned based (asr_buzzard_infop), /* for watching dying processes */ 2 30 2 header aligned like as_request_header, 2 31 2 version char (8), 2 32 2 info_channel fixed bin (71), /* IPC channel to send processid wakeup messges */ 2 33 2 my_reference_id bit (36); /* becomes top 36 bits of death notice */ 2 34 2 35 dcl 1 asr_buzzard_notification aligned based (asr_replyp), /* message on process destruction */ 2 36 2 your_reference_id bit (36), /* from asr_buzzard_info.my_reference_id */ 2 37 2 process_id bit (36); /* process id of dead process */ 2 38 2 39 /* *********************************************************************** 2 40* * asr_bump_user_info - Message segment info structure for the * 2 41* * ASR_BUMP_USER requests. * 2 42* * process-id - process_id of process to be bumped. * 2 43* * message - message to be splat across user terminal when * 2 44* * the bump is begun, i.e., the grace time starts. * 2 45* * No message is sent if message = "". * 2 46* * grace_time_in_seconds * 2 47* * - Amount of time given to the user before the * 2 48* * user's process is actually terminated. * 2 49* * reply_reference_id * 2 50* * - Reference id that will be returned in the * 2 51* * as_reply_bump_user structure. A reply channel * 2 52* * must be specified in reply_channel in the * 2 53* * header of this structure. The reply message * 2 54* * will have the sturcture of asr_reply_bump_user. * 2 55* *********************************************************************** */ 2 56 2 57 dcl asr_bump_user_info_version_1 char (8) init ("asrbump1") int static options (constant); 2 58 2 59 dcl asr_bump_user_info_ptr ptr; 2 60 dcl 1 asr_bump_user_info aligned based (asr_bump_user_info_ptr), 2 61 2 header aligned like as_request_header, 2 62 2 version char (8), 2 63 2 process_id bit (36), 2 64 2 message char (100) unaligned, 2 65 2 grace_time_in_seconds fixed bin, 2 66 2 reply_reference_id bit (36); 2 67 2 68 /* *********************************************************************** 2 69* * asr_reply_bump_user - Structure sent with the IPC reply upon * 2 70* * initiating the bump. Note: the actual * 2 71* * bump does not take place until after the * 2 72* * given of default grace time. * 2 73* * code - Standard system status code. * 2 74* * reference_id * 2 75* * - Reference id supplied in asr_bump_user_info when * 2 76* * bump user request was made. * 2 77* *********************************************************************** */ 2 78 2 79 dcl 1 asr_reply_bump_user aligned based (asr_replyp), 2 80 2 code fixed bin (35), 2 81 2 reference_id bit (36); 2 82 2 83 2 84 dcl asr_admin_command_info_ptr pointer; 2 85 dcl 1 asr_admin_command_info aligned based (asr_admin_command_info_ptr), 2 86 2 header aligned like as_request_header, 2 87 2 version char (8), 2 88 2 flags aligned, 2 89 3 send_start_wakeup bit (1) unaligned, /* over reply channel */ 2 90 3 send_completion_wakeup bit (1) unaligned, /* over reply channel */ 2 91 3 send_completion_message bit (1) unaligned, 2 92 3 send_completion_mail bit (1) unaligned, 2 93 3 dialog bit (1) unaligned, /* NOT YET IMPLEMENTED */ 2 94 3 pad bit (31) unaligned, 2 95 2 dialog_info aligned, /* NOT YET IMPLEMENTED */ 2 96 3 event_channel fixed bin (71), /* NOTIFY ME ON READ/RIGHT */ 2 97 3 output_message_segment_pathname char (200) unaligned, /* Writes go here */ 2 98 3 input_message_segment_pathname char (200) unaligned, /* Reads come here */ 2 99 2 mail_destination char (200) unaligned, 2 100 2 command_length fixed bin (21), 2 101 2 command char (asr_ac_length refer (asr_admin_command_info.command_length)) unaligned; 2 102 2 103 /* See admin_dialog_info.incl.pl1 for related structures */ 2 104 2 105 dcl asr_ac_length fixed bin (21); 2 106 dcl ASR_AC_VERSION_1 char (8) init ("asrac001") int static options (constant); 2 107 2 108 dcl 1 asr_reply_admin_command aligned based (asr_replyp), 2 109 2 code fixed bin (35), 2 110 2 flags aligned, 2 111 3 command_refused bit (1) unaligned, 2 112 3 command_started bit (1) unaligned, 2 113 3 command_completed bit (1) unaligned, /* with or without errors */ 2 114 3 command_aborted bit (1) unaligned, 2 115 3 command_had_errors bit (1) unaligned, /* at least one error */ 2 116 3 pad bit (31) unaligned; 2 117 2 118 /**** The following structure is used by the Ring-1 PNT software to 2 119* notify the answering service of a PNT change which might affect 2 120* logged in processes. */ 2 121 2 122 dcl asr_note_pnt_change_info_ptr ptr; 2 123 2 124 dcl 1 asr_note_pnt_change_info structure aligned based (asr_note_pnt_change_info_ptr), 2 125 2 header aligned like as_request_header, 2 126 2 version char (8), 2 127 2 person_id char (32); 2 128 2 129 dcl ASR_NPC_INFO_VERSION_1 char (8) initial ("asrnpc01") internal static options (constant); 2 130 2 131 /* END INCLUDE FILE ... as_requests.incl.pl1 */ 58 59 /* format: on */ 60 61 end pnt_notify_as_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 10/28/86 1024.8 pnt_notify_as_.pl1 >special_ldd>install>MR12.0-1200>pnt_notify_as_.pl1 57 1 10/28/86 0942.5 as_request_header.incl.pl1 >special_ldd>install>MR12.0-1200>as_request_header.incl.pl1 58 2 02/12/85 1429.5 as_requests.incl.pl1 >ldd>include>as_requests.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. ASR_NOTE_PNT_CHANGE constant fixed bin(17,0) initial dcl 1-29 ref 46 ASR_NPC_INFO_VERSION_1 000000 constant char(8) initial unaligned dcl 2-129 ref 48 NPCI 000102 automatic structure level 1 dcl 26 set ref 51 51 51 51 P_code parameter fixed bin(35,0) dcl 17 set ref 8 53* P_person_id parameter char unaligned dcl 19 ref 8 49 addr builtin function dcl 38 ref 51 51 as_request_header based structure level 1 dcl 1-62 as_request_version_1 constant fixed bin(17,0) initial dcl 1-27 ref 45 asr_note_pnt_change_info based structure level 1 dcl 2-124 code 000100 automatic fixed bin(35,0) dcl 24 set ref 43* 51* 53 header 000102 automatic structure level 2 dcl 26 person_id 6 000102 automatic char(32) level 2 dcl 26 set ref 49* reply_channel 2 000102 automatic fixed bin(71,0) level 3 dcl 26 set ref 47* send_as_request_$no_block 000010 constant entry external dcl 32 ref 51 size builtin function dcl 39 ref 51 51 type 1 000102 automatic fixed bin(17,0) level 3 dcl 26 set ref 46* version 4 000102 automatic char(8) level 2 in structure "NPCI" dcl 26 in procedure "pnt_notify_as_" set ref 48* version 000102 automatic fixed bin(17,0) level 3 in structure "NPCI" dcl 26 in procedure "pnt_notify_as_" set ref 45* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ASR_ABS_COMMAND internal static fixed bin(17,0) initial dcl 1-29 ASR_AC_VERSION_1 internal static char(8) initial unaligned dcl 2-106 ASR_ADMIN_COMMAND internal static fixed bin(17,0) initial dcl 1-29 ASR_BUMP_USER internal static fixed bin(17,0) initial dcl 1-29 ASR_COM_CHANNEL_INFO internal static fixed bin(17,0) initial dcl 1-29 ASR_DAEMON_COMMAND internal static fixed bin(17,0) initial dcl 1-29 ASR_DEFER_IN_ADMIN_MODE internal static bit(1) initial array unaligned dcl 1-45 ASR_DIAL_OUT internal static fixed bin(17,0) initial dcl 1-29 ASR_DIAL_SERVER internal static fixed bin(17,0) initial dcl 1-29 ASR_FIRST_TYPE internal static fixed bin(17,0) initial dcl 1-29 ASR_FPE_CAUSES_LOGOUT internal static fixed bin(17,0) initial dcl 1-29 ASR_FPE_CAUSES_NEW_PROC internal static fixed bin(17,0) initial dcl 1-29 ASR_LAST_TYPE internal static fixed bin(17,0) initial dcl 1-29 ASR_PROC_TERM_NOTIFY internal static fixed bin(17,0) initial dcl 1-29 ASR_REQUEST_NAMES internal static char(40) initial array unaligned dcl 1-48 asr_ac_length automatic fixed bin(21,0) dcl 2-105 asr_admin_command_info based structure level 1 dcl 2-85 asr_admin_command_info_ptr automatic pointer dcl 2-84 asr_bump_user_info based structure level 1 dcl 2-60 asr_bump_user_info_ptr automatic pointer dcl 2-59 asr_bump_user_info_version_1 internal static char(8) initial unaligned dcl 2-57 asr_buzzard_info based structure level 1 dcl 2-29 asr_buzzard_info_version_1 internal static char(8) initial unaligned dcl 2-27 asr_buzzard_infop automatic pointer dcl 2-28 asr_buzzard_notification based structure level 1 dcl 2-35 asr_note_pnt_change_info_ptr automatic pointer dcl 2-122 asr_reply based structure level 1 dcl 2-21 asr_reply_admin_command based structure level 1 dcl 2-108 asr_reply_bump_user based structure level 1 dcl 2-79 asr_replyp automatic pointer dcl 2-20 NAME DECLARED BY EXPLICIT CONTEXT. pnt_notify_as_ 000012 constant entry external dcl 8 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 132 144 72 142 Length 352 72 12 171 40 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME pnt_notify_as_ 96 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME pnt_notify_as_ 000100 code pnt_notify_as_ 000102 NPCI pnt_notify_as_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out return_mac ext_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. send_as_request_$no_block NO EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 8 000006 43 000025 45 000026 46 000030 47 000032 48 000034 49 000036 51 000044 53 000066 54 000071 ----------------------------------------------------------- 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