/* ar.h — Unix archive (ar) file format. * * Red Bear OS / relibc. Defines the archive magic strings and per-member header * layout used by `ar(1)` archives (and consumed by libelf's archive support). * Header-only: purely a struct and string constants, no runtime symbols. */ #ifndef _AR_H #define _AR_H 1 #define ARMAG "!\n" /* String that begins an archive file. */ #define SARMAG 8 /* Size of ARMAG string. */ #define ARFMAG "`\n" /* String at the end of each header. */ struct ar_hdr { char ar_name[16]; /* Member file name, blank/`/`-terminated. */ char ar_date[12]; /* File date, decimal seconds since epoch. */ char ar_uid[6]; /* User id, in ASCII decimal. */ char ar_gid[6]; /* Group id, in ASCII decimal. */ char ar_mode[8]; /* File mode, in ASCII octal. */ char ar_size[10]; /* File size, in ASCII decimal. */ char ar_fmag[2]; /* Always contains ARFMAG. */ }; #endif /* ar.h */