dir_f.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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. * Directory header
  16. */
  17. struct adfs_dirheader {
  18. unsigned char startmasseq;
  19. unsigned char startname[4];
  20. };
  21. #define ADFS_NEWDIR_SIZE 2048
  22. #define ADFS_NUM_DIR_ENTRIES 77
  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. };
  35. /*
  36. * Directory tail
  37. */
  38. union adfs_dirtail {
  39. struct {
  40. unsigned char dirlastmask;
  41. char dirname[10];
  42. unsigned char dirparent[3];
  43. char dirtitle[19];
  44. unsigned char reserved[14];
  45. unsigned char endmasseq;
  46. unsigned char endname[4];
  47. unsigned char dircheckbyte;
  48. } old;
  49. struct {
  50. unsigned char dirlastmask;
  51. unsigned char reserved[2];
  52. unsigned char dirparent[3];
  53. char dirtitle[19];
  54. char dirname[10];
  55. unsigned char endmasseq;
  56. unsigned char endname[4];
  57. unsigned char dircheckbyte;
  58. } new;
  59. };
  60. #endif