1 /* --------------- BEGIN include file status_structures.incl.pl1 --------------- */
 2 
 3 /* Revised from existing include files 09/26/78 by C. D. Tavares */
 4 
 5 /* This include file contains branch and link structures returned by
 6    hcs_$status_ and hcs_$status_long. */
 7 
 8 dcl 1 status_branch aligned based (status_ptr),
 9     2 short aligned,
10       3 type fixed bin (2) unaligned unsigned,              /* seg, dir, or link */
11       3 nnames fixed bin (16) unaligned unsigned,           /* number of names */
12       3 names_relp bit (18) unaligned,                      /* see entry_names dcl */
13       3 dtcm bit (36) unaligned,                            /* date/time contents last modified */
14       3 dtu bit (36) unaligned,                             /* date/time last used */
15       3 mode bit (5) unaligned,                             /* caller's effective access */
16       3 raw_mode bit (5) unaligned,                         /* caller's raw "rew" modes */
17       3 pad1 bit (8) unaligned,
18       3 records_used fixed bin (18) unaligned unsigned,     /* number of NONZERO pages used */
19 
20 /* Limit of information returned by hcs_$status_ */
21 
22     2 long aligned,
23       3 dtd bit (36) unaligned,                             /* date/time last dumped */
24       3 dtem bit (36) unaligned,                            /* date/time branch last modified */
25       3 lvid bit (36) unaligned,                            /* logical volume ID */
26       3 current_length fixed bin (12) unaligned unsigned,   /* number of last page used */
27       3 bit_count fixed bin (24) unaligned unsigned,        /* reported length in bits */
28       3 pad2 bit (8) unaligned,
29       3 copy_switch bit (1) unaligned,                      /* copy switch */
30       3 tpd_switch bit (1) unaligned,                       /* transparent to paging device switch */
31       3 mdir_switch bit (1) unaligned,                      /* is a master dir */
32       3 damaged_switch bit (1) unaligned,                   /* salvager warned of possible damage */
33       3 synchronized_switch bit (1) unaligned,              /* DM synchronized file */
34       3 pad3 bit (5) unaligned,
35       3 ring_brackets (0:2) fixed bin (6) unaligned unsigned,
36       3 uid bit (36) unaligned;                             /* unique ID */
37 
38 dcl 1 status_link aligned based (status_ptr),
39     2 type fixed bin (2) unaligned unsigned,                /* as above */
40     2 nnames fixed bin (16) unaligned unsigned,
41     2 names_relp bit (18) unaligned,
42     2 dtem bit (36) unaligned,
43     2 dtd bit (36) unaligned,
44     2 pathname_length fixed bin (17) unaligned,             /* see pathname */
45     2 pathname_relp bit (18) unaligned;                     /* see pathname */
46 
47 dcl  status_entry_names (status_branch.nnames) character (32) aligned
48           based (pointer (status_area_ptr, status_branch.names_relp)),
49                                                             /* array of names returned */
50      status_pathname character (status_link.pathname_length) aligned
51           based (pointer (status_area_ptr, status_link.pathname_relp)),
52                                                             /* link target path */
53      status_area_ptr pointer,
54      status_ptr pointer;
55 
56 dcl (Link initial (0),
57      Segment initial (1),
58      Directory initial (2)) fixed bin internal static options (constant);
59                                                             /* values for type fields declared above */
60 
61 /* ---------------- END include file status_structures.incl.pl1 ---------------- */