|
|
1.1 root 1: /* GNU Emacs VMS directory definition file.
2: Copyright (C) 1986 Free Software Foundation, Inc.
3:
4: This file is part of GNU Emacs.
5:
6: GNU Emacs is distributed in the hope that it will be useful,
7: but WITHOUT ANY WARRANTY. No author or distributor
8: accepts responsibility to anyone for the consequences of using it
9: or for whether it serves any particular purpose or works at all,
10: unless he says so in writing. Refer to the GNU Emacs General Public
11: License for full details.
12:
13: Everyone is granted permission to copy, modify and redistribute
14: GNU Emacs, but only under the conditions described in the
15: GNU Emacs General Public License. A copy of this license is
16: supposed to have been given to you along with GNU Emacs so you
17: can know your rights and responsibilities. It should be in a
18: file named COPYING. Among other things, the copyright notice
19: and this notice must be preserved on all copies. */
20:
21: /*
22: * Files-11 Ver. 2 directory structure (VMS V4.x - long names)
23: */
24: #ifndef DIR$K_LENGTH
25:
26: #define DIR$C_FID 0
27: #define DIR$C_LINKNAME 1
28: #define DIR$K_LENGTH 6
29: #define DIR$C_LENGTH 6
30: #define DIR$S_DIRDEF 6
31: #define DIR$W_SIZE 0
32: #define DIR$W_VERLIMIT 2
33: #define DIR$B_FLAGS 4
34: #define DIR$S_TYPE 3
35: #define DIR$V_TYPE 0
36: #define DIR$V_NEXTREC 6
37: #define DIR$V_PREVREC 7
38: #define DIR$B_NAMECOUNT 5
39: #define DIR$S_NAME 80
40: #define DIR$T_NAME 6
41:
42: #define DIR$K_VERSION 8
43: #define DIR$C_VERSION 8
44: #define DIR$S_DIRDEF1 8
45: #define DIR$W_VERSION 0
46: #define DIR$S_FID 6
47: #define DIR$W_FID 2
48: #define DIR$W_FID_NUM 2
49: #define DIR$W_FID_SEQ 4
50: #define DIR$W_FID_RVN 6
51: #define DIR$B_FID_RVN 6
52: #define DIR$B_FID_NMX 7
53:
54: #define DIR$S_DIRDEF2 1
55: #define DIR$T_LINKNAME 0
56:
57: typedef struct dir$_name {
58: /* short dir$w_size; /* if you read with RMS, it eats this... */
59: short dir$w_verlimit; /* maximum number of versions */
60: union {
61: unsigned char dir_b_flags;
62: #define dir$b_flags dir__b_flags.dir_b_flags
63: struct {
64: unsigned char dir_v_type: DIR$S_TYPE;
65: #define dir$v_type dir__b_flags.dir___b_flags.dir_v_type
66: unsigned char: 3;
67: unsigned char dir_v_nextrec: 1;
68: #define dir$v_nextrec dir__b_flags.dir___b_flags.dir_v_nextrec
69: unsigned char dir_v_prevrec: 1;
70: #define dir$v_prevrec dir__b_flags.dir___b_flags.dir_v_prevrec
71: } dir___b_flags;
72: } dir__b_flags;
73: unsigned char dir$b_namecount;
74: char dir$t_name[];
75: } dir$_dirdef; /* only the fixed first part */
76:
77: typedef struct dir$_version {
78: short dir$w_version;
79: short dir$w_fid_num;
80: short dir$w_fid_seq;
81: union {
82: short dir_w_fid_rvn;
83: #define dir$w_fid_rvn dir__w_fid_rvn.dir_w_fid_rvn
84: struct {
85: char dir_b_fid_rvn;
86: #define dir$b_fid_rvn dir__w_fid_rvn.dir___w_fid_rvn.dir_b_fid_rvn
87: char dir_b_fid_nmx;
88: #define dir$b_fid_nmx dir__w_fid_rvn.dir___w_fid_rvn.dir_b_fid_nmx
89: } dir___w_fid_rvn;
90: } dir__w_fid_rvn;
91: } dir$_dirdef1; /* one for each version of the file */
92:
93: typedef
94: struct dir$_linkname {
95: char dir$t_linkname[];
96: } dir$_dirdef2;
97:
98: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.