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 /*        Procedure to return certain per-process info previously in process_info */
14 /*        Initially coded by R. J. Feiertag, Dec. 10,1969 */
15 /*        Last modified by Kobziar July 74 to add authorization entry */
16 
17 proc_info:          proc(process_id,process_group_id,process_dir_name,lock_id_);
18 
19           declare process_id bit(36) aligned,
20                     process_group_id char(32) aligned,
21                     process_dir_name char(32) aligned,
22                     lock_id_ bit(36) aligned,
23                     ((pds$processid, pds$lock_id, tc_data$initializer_id) bit(36),
24                      (pds$process_group_id, pds$process_dir_name) char(32)) aligned ext;
25 
26 
27           process_id = pds$processid;             /* pick up process id */
28           lock_id_ = pds$lock_id;                 /* pick up lock id */
29           process_group_id = pds$process_group_id;
30           process_dir_name = pds$process_dir_name;
31           return;
32 
33 get_initial_ring: entry(iring);
34 
35 dcl (pds$initial_ring ext, iring) fixed bin;
36 
37           iring = pds$initial_ring;
38 
39           return;                       /* That was rather difficult! */
40 
41 set_mask_ring: entry;                             /* hphcs_ entry */
42 
43           if pds$processid = tc_data$initializer_id
44           then pds$initial_ring = 4;              /* Initializer now wants to be masked in lower rings */
45           return;
46 
47 authorization: entry(auth, max_auth);
48 
49           declare (auth, max_auth) bit(72) aligned,
50                     (pds$access_authorization, pds$max_access_authorization) ext static aligned bit(72);
51 
52           auth = pds$access_authorization;
53           max_auth = pds$max_access_authorization;
54           return;
55 
56 end proc_info;