xref: /openbmc/linux/fs/adfs/dir_f.h (revision 9dbbc3b9)
1  /* SPDX-License-Identifier: GPL-2.0-only */
2  /*
3   *  linux/fs/adfs/dir_f.h
4   *
5   *  Copyright (C) 1999 Russell King
6   *
7   *  Structures of directories on the F format disk
8   */
9  #ifndef ADFS_DIR_F_H
10  #define ADFS_DIR_F_H
11  
12  /*
13   * Directory header
14   */
15  struct adfs_dirheader {
16  	__u8 startmasseq;
17  	__u8 startname[4];
18  } __attribute__((packed));
19  
20  #define ADFS_NEWDIR_SIZE	2048
21  #define ADFS_NUM_DIR_ENTRIES	77
22  
23  /*
24   * Directory entries
25   */
26  struct adfs_direntry {
27  #define ADFS_F_NAME_LEN 10
28  	char dirobname[ADFS_F_NAME_LEN];
29  	__u8 dirload[4];
30  	__u8 direxec[4];
31  	__u8 dirlen[4];
32  	__u8 dirinddiscadd[3];
33  	__u8 newdiratts;
34  } __attribute__((packed));
35  
36  /*
37   * Directory tail
38   */
39  struct adfs_olddirtail {
40  	__u8 dirlastmask;
41  	char dirname[10];
42  	__u8 dirparent[3];
43  	char dirtitle[19];
44  	__u8 reserved[14];
45  	__u8 endmasseq;
46  	__u8 endname[4];
47  	__u8 dircheckbyte;
48  } __attribute__((packed));
49  
50  struct adfs_newdirtail {
51  	__u8 dirlastmask;
52  	__u8 reserved[2];
53  	__u8 dirparent[3];
54  	char dirtitle[19];
55  	char dirname[10];
56  	__u8 endmasseq;
57  	__u8 endname[4];
58  	__u8 dircheckbyte;
59  } __attribute__((packed));
60  
61  union adfs_dirtail {
62  	struct adfs_olddirtail old;
63  	struct adfs_newdirtail new;
64  };
65  
66  #endif
67