+
+/* various finder offset and info bits */
+#define FINDERINFO_FRTYPEOFF 0
+#define FINDERINFO_FRCREATOFF 4
+#define FINDERINFO_FRFLAGOFF 8
+
+/* FinderInfo Flags, char in `ad ls`, valid for files|dirs */
+#define FINDERINFO_ISONDESK (1) /* "d", fd */
+#define FINDERINFO_COLOR (0x0e)
+#define FINDERINFO_HIDEEXT (1<<4) /* "e", fd */
+#define FINDERINFO_ISHARED (1<<6) /* "m", f */
+#define FINDERINFO_HASNOINITS (1<<7) /* "n", f */
+#define FINDERINFO_HASBEENINITED (1<<8) /* "i", fd */
+#define FINDERINFO_HASCUSTOMICON (1<<10) /* "c", fd */
+#define FINDERINFO_ISSTATIONNERY (1<<11) /* "t", f */
+#define FINDERINFO_NAMELOCKED (1<<12) /* "s", fd */
+#define FINDERINFO_HASBUNDLE (1<<13) /* "b", fd */
+#define FINDERINFO_INVISIBLE (1<<14) /* "v", fd */
+#define FINDERINFO_ISALIAS (1<<15) /* "a", fd */
+
+#define FINDERINFO_FRVIEWOFF 14
+#define FINDERINFO_CUSTOMICON 0x4
+#define FINDERINFO_CLOSEDVIEW 0x100
+
+/*
+ The "shared" and "invisible" attributes are opaque and stored and
+ retrieved from the FinderFlags. This fixes Bug #2802236:
+ <https://sourceforge.net/tracker/?func=detail&aid=2802236&group_id=8642&atid=108642>
+*/
+
+/* AFP attributes, char in `ad ls`, valid for files|dirs */
+#define ATTRBIT_INVISIBLE (1<<0) /* opaque from FinderInfo */
+#define ATTRBIT_MULTIUSER (1<<1) /* file: opaque, dir: see below */
+#define ATTRBIT_SYSTEM (1<<2) /* "y", fd */
+#define ATTRBIT_DOPEN (1<<3) /* data fork already open. Not stored, computed on the fly */
+#define ATTRBIT_ROPEN (1<<4) /* resource fork already open. Not stored, computed on the fly */
+#define ATTRBIT_NOWRITE (1<<5) /* "w", f, write inhibit(v2)/read-only(v1) bit */
+#define ATTRBIT_BACKUP (1<<6) /* "p", fd */
+#define ATTRBIT_NORENAME (1<<7) /* "r", fd */
+#define ATTRBIT_NODELETE (1<<8) /* "l", fd */
+#define ATTRBIT_NOCOPY (1<<10) /* "o", f */
+#define ATTRBIT_SETCLR (1<<15) /* set/clear bit (d) */
+
+/* AFP attributes for dirs. These should probably be computed on the fly.
+ * We don't do that, nor does e.g. OS S X 10.5 Server */
+#define ATTRBIT_EXPFLDR (1<<1) /* Folder is a sharepoint */
+#define ATTRBIT_MOUNTED (1<<3) /* Directory is mounted by a user */
+#define ATTRBIT_SHARED (1<<4) /* Shared area, called IsExpFolder in spec */
+