[][src]Struct gpt::header::Header

pub struct Header {
    pub signature: String,
    pub revision: u32,
    pub header_size_le: u32,
    pub crc32: u32,
    pub reserved: u32,
    pub current_lba: u64,
    pub backup_lba: u64,
    pub first_usable: u64,
    pub last_usable: u64,
    pub disk_guid: Uuid,
    pub part_start: u64,
    pub num_parts: u32,
    pub part_size: u32,
    pub crc32_parts: u32,
}

Header describing a GPT disk.

Fields

signature: String

GPT header magic signature, hardcoded to "EFI PART".

revision: u32

00 00 01 00

header_size_le: u32

little endian

crc32: u32

CRC32 of the header with crc32 section zeroed

reserved: u32

must be 0

current_lba: u64

For main header, 1

backup_lba: u64

LBA for backup header

first_usable: u64

First usable LBA for partitions (primary table last LBA + 1)

last_usable: u64

Last usable LBA (secondary partition table first LBA - 1)

disk_guid: Uuid

UUID of the disk

part_start: u64

Starting LBA of partition entries

num_parts: u32

Number of partition entries

part_size: u32

Size of a partition entry, usually 128

crc32_parts: u32

CRC32 of the partition table

Methods

impl Header[src]

pub fn write_primary(
    &self,
    file: &mut File,
    lb_size: LogicalBlockSize
) -> Result<usize>
[src]

Write the primary header.

With a CRC32 set to zero this will set the crc32 after writing the header out.

pub fn write_backup(
    &self,
    file: &mut File,
    lb_size: LogicalBlockSize
) -> Result<usize>
[src]

Write the backup header.

With a CRC32 set to zero this will set the crc32 after writing the header out.

Trait Implementations

impl PartialEq<Header> for Header[src]

impl Clone for Header[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Eq for Header[src]

impl Display for Header[src]

impl Debug for Header[src]

Auto Trait Implementations

impl Send for Header

impl Sync for Header

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.