#[repr(C)]pub struct MemberHeader {
pub identifier: [u8; 16],
pub timestamp: [u8; 12],
pub owner_id: [u8; 6],
pub group_id: [u8; 6],
pub mode: [u8; 8],
pub file_size: [u8; 10],
pub terminator: [u8; 2],
}Expand description
A Unix Archive Header - meta data for the file/byte blob/whatever that follows exactly after.
All data is right-padded with spaces ASCII 0x20. The Binary layout is as follows:
| Offset | Length | Name | Format |
|---|---|---|---|
| 0 | 16 | File identifier | ASCII |
| 16 | 12 | File modification timestamp | Decimal |
| 28 | 6 | Owner ID | Decimal |
| 34 | 6 | Group ID | Decimal |
| 40 | 8 | File mode | Octal |
| 48 | 10 | Filesize in bytes | Decimal |
| 58 | 2 | Ending characters | 0x60 0x0A |
Byte alignment is according to the following:
Each archive file member begins on an even byte boundary; a newline is inserted between files if necessary. Nevertheless, the size given reflects the actual size of the file exclusive of padding.
Fields§
§identifier: [u8; 16]The identifier, or name for this file/whatever.
timestamp: [u8; 12]The timestamp for when this file was last modified. Base 10 number
owner_id: [u8; 6]The file’s owner’s id. Base 10 string number
group_id: [u8; 6]The file’s group id. Base 10 string number
mode: [u8; 8]The file’s permissions mode. Base 8 number number
file_size: [u8; 10]The size of this file. Base 10 string number
terminator: [u8; 2]The file header’s terminator, always 0x60 0x0A
Implementations§
Trait Implementations§
Source§impl Clone for MemberHeader
impl Clone for MemberHeader
Source§fn clone(&self) -> MemberHeader
fn clone(&self) -> MemberHeader
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more