COMPILATION LISTING OF SEGMENT rcp_cancel Compiled by: Multics PL/I Compiler, Release 27d, of October 11, 1982 Compiled at: Honeywell LISD Phoenix, System M Compiled on: 11/15/82 1736.8 mst Mon Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* * Copyright (c) 1972 by Massachusetts Institute of * 6* * Technology and Honeywell Information Systems, Inc. * 7* * * 8* *********************************************************** */ 9 10 11 rcp_cancel: 12 proc (); 13 14 /* 15* D_E_S_C_R_I_P_T_I_O_N_ 16* 17* This command should only be used by the operator or somebody 18* with access to rcp_sys_. It takes two arguments, a reservation id 19* and the group id of the user owning the reservation and cancels 20* the reservation. Only one reservation for one user may be cancelled 21* per call. 22* 23* 24* J_O_U_R_N_A_L_I_Z_A_T_I_O_N_ 25* 26* 1) Written 2/79 by R.J.C. Kissel. 27**/ 28 29 dcl res_id char (19); /* The reservation id to cancel. */ 30 dcl group_id char (32); /* Group id of the user owning the reservation. */ 31 dcl code fixed bin (35); 32 33 dcl num_args fixed bin; /* Nunber of arguments. */ 34 dcl arg_num fixed bin; /* Argument loop index. */ 35 36 dcl arg_len fixed bin; 37 dcl arg_ptr ptr; 38 dcl arg char (arg_len) based (arg_ptr); 39 40 dcl com_err_ entry options (variable); 41 dcl cu_$arg_count entry (fixed bin); 42 dcl cu_$arg_ptr entry (fixed bin, ptr, fixed bin, fixed bin (35)); 43 dcl rcp_sys_$cancel_id_string 44 entry (char (*), char (*), fixed bin (35)); 45 46 dcl error_table_$wrong_no_of_args 47 fixed bin (35) external; 48 dcl error_table_$bad_arg 49 fixed bin (35) external; 50 51 call cu_$arg_count (num_args); 52 53 if num_args < 4 | num_args > 5 54 then goto ERROR_usage; 55 56 res_id = ""; 57 group_id = ""; 58 59 do arg_num = 1 to num_args; 60 call cu_$arg_ptr (arg_num, arg_ptr, arg_len, code); 61 if code ^= 0 62 then goto ERROR_arg; 63 64 if arg = "cancel" 65 then ; /* Ignore this. */ 66 67 else if arg = "-id" 68 then do; 69 arg_num = arg_num + 1; 70 call cu_$arg_ptr (arg_num, arg_ptr, arg_len, code); 71 if code ^= 0 72 then goto ERROR_arg; 73 74 res_id = arg; 75 end; 76 77 else if arg = "-user" 78 then do; 79 arg_num = arg_num + 1; 80 call cu_$arg_ptr (arg_num, arg_ptr, arg_len, code); 81 if code ^= 0 82 then goto ERROR_arg; 83 84 group_id = arg; 85 end; 86 87 else goto ERROR_badarg; 88 end; 89 90 if res_id = "" | group_id = "" 91 then goto ERROR_usage; 92 93 call rcp_sys_$cancel_id_string (res_id, group_id, code); 94 if code ^= 0 95 then goto ERROR_cancel; 96 97 return; 98 99 ERROR_usage: 100 call com_err_ (error_table_$wrong_no_of_args, "rcp_cancel", "Usage is: rcp cancel -id STR -user STR"); 101 return; 102 103 ERROR_arg: 104 call com_err_ (code, "rcp_cancel", "Argument number ^d.", arg_num); 105 return; 106 107 ERROR_badarg: 108 call com_err_ (error_table_$bad_arg, "rcp_cancel", "^a", arg); 109 return; 110 111 ERROR_cancel: 112 call com_err_ (code, "rcp_cancel", "Cancellation not performed."); 113 return; 114 115 end rcp_cancel; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/15/82 1521.9 rcp_cancel.pl1 >dumps>old>recomp>rcp_cancel.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. arg based char unaligned dcl 38 set ref 64 67 74 77 84 107* arg_len 000120 automatic fixed bin(17,0) dcl 36 set ref 60* 64 67 70* 74 77 80* 84 107 107 arg_num 000117 automatic fixed bin(17,0) dcl 34 set ref 59* 60* 69* 69 70* 79* 79 80* 103* arg_ptr 000122 automatic pointer dcl 37 set ref 60* 64 67 70* 74 77 80* 84 107 code 000115 automatic fixed bin(35,0) dcl 31 set ref 60* 61 70* 71 80* 81 93* 94 103* 111* com_err_ 000010 constant entry external dcl 40 ref 99 103 107 111 cu_$arg_count 000012 constant entry external dcl 41 ref 51 cu_$arg_ptr 000014 constant entry external dcl 42 ref 60 70 80 error_table_$bad_arg 000022 external static fixed bin(35,0) dcl 48 set ref 107* error_table_$wrong_no_of_args 000020 external static fixed bin(35,0) dcl 46 set ref 99* group_id 000105 automatic char(32) unaligned dcl 30 set ref 57* 84* 90 93* num_args 000116 automatic fixed bin(17,0) dcl 33 set ref 51* 53 53 59 rcp_sys_$cancel_id_string 000016 constant entry external dcl 43 ref 93 res_id 000100 automatic char(19) unaligned dcl 29 set ref 56* 74* 90 93* NAMES DECLARED BY EXPLICIT CONTEXT. ERROR_arg 000306 constant label dcl 103 ref 61 71 81 ERROR_badarg 000343 constant label dcl 107 ref 77 ERROR_cancel 000402 constant label dcl 111 ref 94 ERROR_usage 000255 constant label dcl 99 ref 53 90 rcp_cancel 000052 constant entry external dcl 11 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 536 562 433 546 Length 734 433 24 136 102 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME rcp_cancel 133 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME rcp_cancel 000100 res_id rcp_cancel 000105 group_id rcp_cancel 000115 code rcp_cancel 000116 num_args rcp_cancel 000117 arg_num rcp_cancel 000120 arg_len rcp_cancel 000122 arg_ptr rcp_cancel THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ cu_$arg_count cu_$arg_ptr rcp_sys_$cancel_id_string THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$bad_arg error_table_$wrong_no_of_args LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 11 000051 51 000057 53 000065 56 000072 57 000075 59 000100 60 000106 61 000123 64 000125 67 000134 69 000140 70 000141 71 000156 74 000160 75 000165 77 000166 79 000172 80 000173 81 000210 84 000212 88 000217 90 000221 93 000231 94 000252 97 000254 99 000255 101 000305 103 000306 105 000342 107 000343 109 000401 111 000402 113 000432 ----------------------------------------------------------- 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