1 /* BEGIN INCLUDE FILE ... _ssu_request_data.incl.pl1 */
 2 /* Created:  13 May 1980 by W. Olin Sibert */
 3 /* Modified: 28 February 1982 by G. Palter to add dont_summarize and dont_list */
 4 /* Modified: 2 August 1982 by Jay Pattin to add unknown flag */
 5 
 6 /* format: style4,delnl,insnl,ifthenstmt,ifthen */
 7 
 8 
 9 /* Description of a subsystem request returned by ssu_$locate_request */
10 
11 dcl  1 request_data aligned based (request_data_ptr),
12        2 full_name character (32) unaligned,                /* its primary name */
13        2 entry entry (pointer, pointer) variable,           /* entry to call to implement the request */
14        2 call_info,                                         /* describes current invocation of the request ... */
15          3 arg_list_ptr pointer,                            /* ... -> argument list */
16          3 arg_count fixed binary,
17          3 af_sw bit (1) aligned,                           /* ... ON => invoked as an active request */
18          3 rv_ptr pointer,                                  /* ... -> active request's return string */
19          3 rv_lth fixed binary (21),                        /* ... maxlength of the return string */
20        2 flags aligned like request_flags,                  /* attributes of the request (from the request table) */
21        2 name_list_ptr pointer unaligned,                   /* -> list of all valid names for the request */
22        2 info_string,                                       /* brief description of the request (if any) */
23          3 ptr pointer unaligned,
24          3 lth fixed binary (18),
25        2 pad (4) bit (36);
26 
27 dcl  request_data_ptr pointer;
28 
29 
30 /* Request attributes from the request table */
31 
32 dcl  1 request_flags aligned based,
33        2 system_flags unaligned,
34          3 allow_command bit (1) unaligned,                 /* ON => request may be called as a command */
35          3 allow_af bit (1) unaligned,                      /* ON => request may be called as an active function */
36          3 unimplemented bit (1) unaligned,                 /* ON => request is not yet implemented */
37          3 multics_request bit (1) unaligned,               /* ON => this request is really just a Multics command */
38          3 dont_summarize bit (1) unaligned,                /* ON => summarize_requests doesn't list this request */
39          3 dont_list bit (1) unaligned,                     /* ON => list_requests doesn't match this one without -all */
40          3 unknown bit (1) unaligned,                       /* ON => return unknown_request, don't list or summarize ever */
41          3 pad bit (11) unaligned,
42        2 user_flags bit (18) unaligned;                     /* no longer used */
43 
44 
45 /* List of all names for a given request */
46 
47 dcl  1 request_name_list aligned based (request_name_list_ptr),
48        2 n_names fixed binary,                              /* structure describing name list */
49        2 name (request_name_list_n_names refer (request_name_list.n_names)) character (32) unaligned;
50 
51 dcl  request_name_list_ptr pointer;
52 dcl  request_name_list_n_names fixed binary;
53 
54 
55 /* Brief description of a request */
56 
57 dcl  request_info_string character (request_info_string_lth) based (request_info_string_ptr);
58 dcl  request_info_string_lth fixed binary (21);
59 dcl  request_info_string_ptr pointer;
60 
61 /* END INCLUDE FILE ... _ssu_request_data.incl.pl1 */