Each member of the archive starts with this 60-byte header, at an even offset in the file. Every field is ASCII text, padded on the right with spaces.
The fields
| Offset | Size | Field | Meaning |
|---|---|---|---|
| 0 | 16 | Name | See Names |
| 16 | 12 | Date | The modification time, in decimal seconds since 1970; often 0 in reproducible builds |
| 28 | 6 | UID | The owner’s user number, in decimal |
| 34 | 6 | GID | The owner’s group number, in decimal |
| 40 | 8 | Mode | The file mode, in octal |
| 48 | 10 | Size | The size of the member’s data, in decimal |
| 58 | 2 | End | Always a backquote and a newline: 60 0A |
The data follows the header. If its size is odd, a newline byte pads it, so that the next header starts on an even offset.
Names
| Name field | Meaning |
|---|---|
name/ | A name of up to 15 characters |
/123 | A long name, at this decimal offset in the long names |
/ | The symbol index |
/SYM64/ | A symbol index with 64-bit offsets |
// | The long names member |