5 #if defined(DUMP_MACOSX)
14 #define DARWIN_RSRC_NAME "/..namedfork/rsrc"
15 #define DARWIN_FINFO_NAME "/..namedfork/finfo"
17 * some structs from the HFS+ info for OS X
18 * - including the header file causes messy clashes
22 u_int32_t fdType
; /* file type */
23 u_int32_t fdCreator
; /* file creator */
24 u_int16_t fdFlags
; /* Finder flags */
26 int16_t v
; /* file's location */
31 typedef struct FndrFileInfo FndrFileInfo
;
34 struct { /* folder's window rectangle */
40 unsigned short frFlags
; /* Finder flags */
42 u_int16_t v
; /* folder's location */
47 typedef struct FndrDirInfo FndrDirInfo
;
50 struct FndrOpaqueInfo
{
53 typedef struct FndrOpaqueInfo FndrOpaqueInfo
;
55 struct fndrinfo_block_t
{
56 FndrFileInfo finderInfo
;
57 FndrOpaqueInfo extendedFinderInfo
;
59 typedef struct fndrinfo_block_t fndrinfo_block_t
;
61 struct attrinfo_block_t
{
62 unsigned long info_length
;
65 struct timespec created
;
66 struct timespec backup
;
68 fndrinfo_block_t finfo
;
73 typedef struct attrinfo_block_t attrinfo_block_t
;
76 #define ASINGLE_MAGIC 0x00051600 /* all in one file */
77 #define ADOUBLE_MAGIC 0x00051607 /* resource + info, data separated */
79 #define ASD_VERSION1 0x00010000 /* the original version */
80 #define ASD_VERSION2 0x00020000 /* the second version */
82 typedef struct ASDHeader
{
83 u_long magic
; /* either single or double */
84 u_long version
; /* ASD_VERSION2 */
85 u_char filler
[16]; /* reserved, zero */
86 u_short entries
; /* the number of entries */
87 /* the entries follow */
88 } ASDHeader
, *ASDHeaderPtr
, **ASDHeaderHandle
;
109 u_long entryID
; /* the entry type (forced to long) */
110 u_long offset
; /* offset in file of entry */
111 u_long len
; /* length of entry */
112 } ASDEntry
, *ASDEntryPtr
, **ASDEntryHandle
;
116 u_long modificationDate
;
119 } FileDates
, *FileDatesPtr
;
121 typedef struct dumpfinderinfo
{
122 FndrFileInfo fndrinfo
; /* 0: size = 16 bytes, same for FndrDirInfo */
123 u_int32_t createDate
; /* 16: date and time of creation */
124 u_int32_t contentModDate
;/* 20: date/time of last content modification */
125 u_int32_t attributeModDate
;/* 24: date/time of last attribute modification */
126 u_int32_t accessDate
; /* 30: date/time of last access (MacOS X only) */
127 u_int32_t backupDate
; /* 34: date/time of last backup */
128 u_int32_t textEncoding
; /* 36: hint for name conversions */
129 char filler
[980]; /* 40: for later expansion, 40 + 980 - 4 = TP_BSIZE - 4 */
130 } DumpFinderInfo
, *DumpFinderInfoPtr
;
132 #endif /* DARWIN_H */