GNU Linux-libre 4.19.211-gnu1
[releases.git] / fs / adfs / dir_f.h
1 /*
2  *  linux/fs/adfs/dir_f.h
3  *
4  *  Copyright (C) 1999 Russell King
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  *
10  *  Structures of directories on the F format disk
11  */
12 #ifndef ADFS_DIR_F_H
13 #define ADFS_DIR_F_H
14
15 /*
16  * Directory header
17  */
18 struct adfs_dirheader {
19         unsigned char startmasseq;
20         unsigned char startname[4];
21 };
22
23 #define ADFS_NEWDIR_SIZE        2048
24 #define ADFS_NUM_DIR_ENTRIES    77
25
26 /*
27  * Directory entries
28  */
29 struct adfs_direntry {
30 #define ADFS_F_NAME_LEN 10
31         char dirobname[ADFS_F_NAME_LEN];
32         __u8 dirload[4];
33         __u8 direxec[4];
34         __u8 dirlen[4];
35         __u8 dirinddiscadd[3];
36         __u8 newdiratts;
37 };
38
39 /*
40  * Directory tail
41  */
42 union adfs_dirtail {
43         struct {
44                 unsigned char dirlastmask;
45                 char dirname[10];
46                 unsigned char dirparent[3];
47                 char dirtitle[19];
48                 unsigned char reserved[14];
49                 unsigned char endmasseq;
50                 unsigned char endname[4];
51                 unsigned char dircheckbyte;
52         } old;
53         struct {
54                 unsigned char dirlastmask;
55                 unsigned char reserved[2];
56                 unsigned char dirparent[3];
57                 char dirtitle[19];
58                 char dirname[10];
59                 unsigned char endmasseq;
60                 unsigned char endname[4];
61                 unsigned char dircheckbyte;
62         } new;
63 };
64
65 #endif