Struct binstall_tar::GnuHeader
source · #[repr(C)]pub struct GnuHeader {Show 24 fields
pub name: [u8; 100],
pub mode: [u8; 8],
pub uid: [u8; 8],
pub gid: [u8; 8],
pub size: [u8; 12],
pub mtime: [u8; 12],
pub cksum: [u8; 8],
pub typeflag: [u8; 1],
pub linkname: [u8; 100],
pub magic: [u8; 6],
pub version: [u8; 2],
pub uname: [u8; 32],
pub gname: [u8; 32],
pub dev_major: [u8; 8],
pub dev_minor: [u8; 8],
pub atime: [u8; 12],
pub ctime: [u8; 12],
pub offset: [u8; 12],
pub longnames: [u8; 4],
pub unused: [u8; 1],
pub sparse: [GnuSparseHeader; 4],
pub isextended: [u8; 1],
pub realsize: [u8; 12],
pub pad: [u8; 17],
}
Expand description
Representation of the header of an entry in an archive
Fields§
§name: [u8; 100]
§mode: [u8; 8]
§uid: [u8; 8]
§gid: [u8; 8]
§size: [u8; 12]
§mtime: [u8; 12]
§cksum: [u8; 8]
§typeflag: [u8; 1]
§linkname: [u8; 100]
§magic: [u8; 6]
§version: [u8; 2]
§uname: [u8; 32]
§gname: [u8; 32]
§dev_major: [u8; 8]
§dev_minor: [u8; 8]
§atime: [u8; 12]
§ctime: [u8; 12]
§offset: [u8; 12]
§longnames: [u8; 4]
§unused: [u8; 1]
§sparse: [GnuSparseHeader; 4]
§isextended: [u8; 1]
§realsize: [u8; 12]
§pad: [u8; 17]
Implementations§
source§impl GnuHeader
impl GnuHeader
sourcepub fn username_bytes(&self) -> &[u8] ⓘ
pub fn username_bytes(&self) -> &[u8] ⓘ
See Header::username_bytes
sourcepub fn set_username(&mut self, name: &str) -> Result<()>
pub fn set_username(&mut self, name: &str) -> Result<()>
See Header::set_username
sourcepub fn groupname_bytes(&self) -> &[u8] ⓘ
pub fn groupname_bytes(&self) -> &[u8] ⓘ
See Header::groupname_bytes
sourcepub fn set_groupname(&mut self, name: &str) -> Result<()>
pub fn set_groupname(&mut self, name: &str) -> Result<()>
See Header::set_groupname
sourcepub fn device_major(&self) -> Result<u32>
pub fn device_major(&self) -> Result<u32>
See Header::device_major
sourcepub fn set_device_major(&mut self, major: u32)
pub fn set_device_major(&mut self, major: u32)
See Header::set_device_major
sourcepub fn device_minor(&self) -> Result<u32>
pub fn device_minor(&self) -> Result<u32>
See Header::device_minor
sourcepub fn set_device_minor(&mut self, minor: u32)
pub fn set_device_minor(&mut self, minor: u32)
See Header::set_device_minor
sourcepub fn set_atime(&mut self, atime: u64)
pub fn set_atime(&mut self, atime: u64)
Encodes the atime
provided into this header.
Note that this time is typically a number of seconds passed since January 1, 1970.
sourcepub fn set_ctime(&mut self, ctime: u64)
pub fn set_ctime(&mut self, ctime: u64)
Encodes the ctime
provided into this header.
Note that this time is typically a number of seconds passed since January 1, 1970.
sourcepub fn real_size(&self) -> Result<u64>
pub fn real_size(&self) -> Result<u64>
Returns the “real size” of the file this header represents.
This is applicable for sparse files where the returned size here is the size of the entire file after the sparse regions have been filled in.
sourcepub fn is_extended(&self) -> bool
pub fn is_extended(&self) -> bool
Indicates whether this header will be followed by additional sparse-header records.
Note that this is handled internally by this library, and is likely only
interesting if a raw
iterator is being used.
sourcepub fn as_header_mut(&mut self) -> &mut Header
pub fn as_header_mut(&mut self) -> &mut Header
Views this as a normal Header