#[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