1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 21da177e4SLinus Torvalds /* 31da177e4SLinus Torvalds * linux/fs/adfs/dir_f.h 41da177e4SLinus Torvalds * 51da177e4SLinus Torvalds * Copyright (C) 1999 Russell King 61da177e4SLinus Torvalds * 71da177e4SLinus Torvalds * Structures of directories on the F format disk 81da177e4SLinus Torvalds */ 91da177e4SLinus Torvalds #ifndef ADFS_DIR_F_H 101da177e4SLinus Torvalds #define ADFS_DIR_F_H 111da177e4SLinus Torvalds 121da177e4SLinus Torvalds /* 131da177e4SLinus Torvalds * Directory header 141da177e4SLinus Torvalds */ 151da177e4SLinus Torvalds struct adfs_dirheader { 16*ae5df413SRussell King __u8 startmasseq; 17*ae5df413SRussell King __u8 startname[4]; 18*ae5df413SRussell King } __attribute__((packed)); 191da177e4SLinus Torvalds 201da177e4SLinus Torvalds #define ADFS_NEWDIR_SIZE 2048 211da177e4SLinus Torvalds #define ADFS_NUM_DIR_ENTRIES 77 221da177e4SLinus Torvalds 231da177e4SLinus Torvalds /* 241da177e4SLinus Torvalds * Directory entries 251da177e4SLinus Torvalds */ 261da177e4SLinus Torvalds struct adfs_direntry { 271da177e4SLinus Torvalds #define ADFS_F_NAME_LEN 10 281da177e4SLinus Torvalds char dirobname[ADFS_F_NAME_LEN]; 291da177e4SLinus Torvalds __u8 dirload[4]; 301da177e4SLinus Torvalds __u8 direxec[4]; 311da177e4SLinus Torvalds __u8 dirlen[4]; 321da177e4SLinus Torvalds __u8 dirinddiscadd[3]; 331da177e4SLinus Torvalds __u8 newdiratts; 34*ae5df413SRussell King } __attribute__((packed)); 351da177e4SLinus Torvalds 361da177e4SLinus Torvalds /* 371da177e4SLinus Torvalds * Directory tail 381da177e4SLinus Torvalds */ 39*ae5df413SRussell King struct adfs_olddirtail { 40*ae5df413SRussell King __u8 dirlastmask; 41*ae5df413SRussell King char dirname[10]; 42*ae5df413SRussell King __u8 dirparent[3]; 43*ae5df413SRussell King char dirtitle[19]; 44*ae5df413SRussell King __u8 reserved[14]; 45*ae5df413SRussell King __u8 endmasseq; 46*ae5df413SRussell King __u8 endname[4]; 47*ae5df413SRussell King __u8 dircheckbyte; 48*ae5df413SRussell King } __attribute__((packed)); 49*ae5df413SRussell King 50*ae5df413SRussell King struct adfs_newdirtail { 51*ae5df413SRussell King __u8 dirlastmask; 52*ae5df413SRussell King __u8 reserved[2]; 53*ae5df413SRussell King __u8 dirparent[3]; 54*ae5df413SRussell King char dirtitle[19]; 55*ae5df413SRussell King char dirname[10]; 56*ae5df413SRussell King __u8 endmasseq; 57*ae5df413SRussell King __u8 endname[4]; 58*ae5df413SRussell King __u8 dircheckbyte; 59*ae5df413SRussell King } __attribute__((packed)); 60*ae5df413SRussell King 611da177e4SLinus Torvalds #endif 62