1 /* BEGIN INCLUDE FILE ... whotab.incl.pl1 */
 2 
 3 /* Modified 740723 by PG to add security info */
 4 /* Modified April 1976 by T. Casey to add shift and shift start and end times */
 5 /* Modified May 1979 by T. Casey for MR7.0a to add foreground absentee variables */
 6 /* Modified June 1981 by E. N. Kittlitz to add n_rate_structures. */
 7 /* Modified December 1981 by E. N. Kittlitz to expand header. */
 8 /* Modified 84-11-14  by E. A. Ranzenbach to add "session" fiedld in  place of obsolete system ID... */
 9 
10 dcl 1 whotab based (whoptr) aligned,
11     2 mxusers fixed bin,                                    /* max. number of users on system */
12     2 n_users fixed bin,                                    /* current number of users */
13     2 mxunits fixed bin,                                    /* maximun "load units" allowed */
14     2 n_units fixed bin,                                    /* current load */
15     2 timeup fixed bin (71),                                /* time system was started */
16     2 session char (8),                                     /* AS state, same as anstbl.session  */
17     2 nextsd fixed bin (71),                                /* time we will shutdown */
18     2 until fixed bin (71),                                 /* projected time we start up again */
19     2 lastsd fixed bin (71),                                /* time of last crash or shutdown */
20     2 erfno char (8),                                       /* if a crash, the error number */
21     2 obsolete_why char (32),                               /* reason for last shutdown */
22     2 installation_id char (32),                            /* name of installation */
23     2 obsolete_message char (32),                           /* message for all users */
24     2 abs_event fixed bin (71),                             /* event channel associated with absentee */
25     2 abs_procid bit (36) aligned,                          /* process to whom messages about absentee are signalled */
26     2 max_abs_users fixed bin,                              /* max number of absentee users */
27     2 abs_users fixed bin,                                  /* number of absentee users logged-in */
28     2 n_daemons fixed bin,                                  /* Number of daemon users logged in */
29     2 request_channel fixed bin (71),                       /* System master channel for requests to AS. */
30     2 request_process_id bit (36),                          /* Process ID of request dispatcher */
31     2 shift fixed bin,                                      /* current shift (copied from anstbl, for users to see) */
32     2 next_shift_change_time fixed bin (71),                /* time current shift ends */
33     2 last_shift_change_time fixed bin (71),                /* time current shift started */
34     2 fg_abs_users fixed bin (17) unal,                     /* number of foreground absentee users */
35     2 n_rate_structures fixed bin (9) unsigned unal,        /* number of rate_structures defined at bootload */
36     2 pad1 bit (9) unal,
37     2 pad (3) fixed bin,
38     2 version fixed bin,                                    /* structure version */
39     2 header_size fixed bin,                                /* length of header in words */
40     2 entry_size fixed bin,                                 /* length of entry in words */
41                                                             /* laste_adjust is used only by Answering Service programs */
42     2 laste_adjust fixed bin,                               /* count of 32 wd blocks in hdr from header_extension_mbz1 */
43     2 laste fixed bin,                                      /* index of last entry in use (includes laste_adjust) */
44     2 freep fixed bin (18) unsigned,                        /* index of first free entry. chained thru "chain" */
45 
46 /* whotab header extension:  The header is extended from 64 words by
47    annexing whole user entries from the 'e' array.  Each 'e' entry is 32 words
48    long. Each annexed block has its first word set to zero, indicating that no user entry is
49    present.  This allows existing programs to function with old definitions of
50    whotab.  Obviously no new header field can be more than 31 contiguous words in
51    length.  In the Answering Service, all programs using whotab must be compiled
52    with the latest version. Only lg_ctl_ uses laste_adjust. */
53 
54     2 header_extension_mbz1 fixed bin,                      /* location 100o */
55     2 n_abs (4) fixed bin,                                  /* number of processes from each background queue */
56     2 abs_qres (4) fixed bin,                               /* number of absentee positions reserved for each queue */
57     2 abs_cpu_limit (4) fixed bin (35),                     /* current absentee cpu limits */
58     2 abs_control,                                          /* see absentee_user_table */
59       3 mnbz bit (1) unal,                                  /* must not be zero */
60       3 abs_maxu_auto bit (1) unal,                         /* 1 if automatic */
61       3 abs_maxq_auto bit (1) unal,                         /* 1 if automatic */
62       3 abs_qres_auto bit (1) unal,                         /* 1 if automatic */
63       3 abs_cpu_limit_auto bit (1) unal,                    /* 1 if automatic */
64       3 queue_dropped (-1:4) bit (1) unal,                  /* 1 if queue dropped */
65       3 abs_up bit (1) unal,                                /* 1 if absentee facility is running */
66       3 abs_stopped bit (1) unal,                           /* 1 if absentee facility is stopped */
67       3 control_pad bit (23) unal,
68     2 installation_request_channel fixed bin (71),          /* IPC channel for install command */
69     2 installation_request_pid bit (36),                    /* installation process identifier */
70     2 sysid char (32),                                      /* current system name */
71     2 header_extension_pad1 (7) fixed bin,                  /* pad to size of e element, offset 137o */
72     2 header_extension_mbz2 fixed bin,                      /* offset 140o */
73     2 message char (124),                                   /* message for all users */
74     2 header_extension_mbz3 fixed bin,                      /* offset 200o */
75     2 why char (124),                                       /* reason for last shutdown */
76     2 e (1000),                                             /* offset 240o */
77       3 active fixed bin,                                   /* nonzero means logged in */
78       3 person char (28) aligned,                           /* person name */
79       3 project char (28),                                  /* project id */
80       3 anon fixed bin,                                     /* 1 if anonymous user */
81       3 padding fixed bin (71),
82       3 timeon fixed bin (71),                              /* time of login */
83       3 units fixed bin,                                    /* load units */
84       3 stby fixed bin,                                     /* 1 if stby */
85       3 idcode char (4),                                    /* tty id code */
86       3 chain fixed bin (18) unsigned,                      /* chain for free list */
87       3 proc_type fixed bin,                                /* 1 = interactive, 2 = absentee, 3 = daemon */
88       3 group char (8),                                     /* party-line group */
89       3 fg_abs bit (1) unal,                                /* "1"b if foreground absentee user */
90       3 disconnected bit (1) unaligned,                     /* "1"b if process is disconnected */
91       3 suspended bit (1) unaligned,                        /* "1"b if process is suspended */
92       3 pad2 bit (33) unal,
93       3 cant_bump_until fixed bin (71),                     /* protected from primary bump till here */
94       3 process_authorization bit (72);                     /* access authorization of process */
95 
96 dcl  WHOTAB_VERSION_1 fixed bin init (1) static options (constant);
97 
98 /* END INCLUDE FILE ... whotab.incl.pl1 */