[][src]Struct elf_utilities::header::Ehdr64

#[repr(C)]pub struct Ehdr64 {
    pub e_ident: [u8; 16],
    pub e_type: Elf64Half,
    pub e_machine: Elf64Half,
    pub e_version: Elf64Word,
    pub e_entry: Elf64Addr,
    pub e_phoff: Elf64Off,
    pub e_shoff: Elf64Off,
    pub e_flags: Elf64Word,
    pub e_ehsize: Elf64Half,
    pub e_phentsize: Elf64Half,
    pub e_phnum: Elf64Half,
    pub e_shentsize: Elf64Half,
    pub e_shnum: Elf64Half,
    pub e_shstrndx: Elf64Half,
}

Fields

e_ident: [u8; 16]e_type: Elf64Halfe_machine: Elf64Halfe_version: Elf64Worde_entry: Elf64Addre_phoff: Elf64Offe_shoff: Elf64Offe_flags: Elf64Worde_ehsize: Elf64Halfe_phentsize: Elf64Halfe_phnum: Elf64Halfe_shentsize: Elf64Halfe_shnum: Elf64Halfe_shstrndx: Elf64Half

Implementations

impl Ehdr64[src]

pub fn size() -> Elf64Half[src]

pub fn get_class(&self) -> Class[src]

pub fn get_data(&self) -> Data[src]

pub fn get_file_version(&self) -> Version[src]

pub fn get_object_version(&self) -> Version[src]

pub fn get_type(&self) -> Type[src]

pub fn get_machine(&self) -> Machine[src]

pub fn get_osabi(&self) -> OSABI[src]

pub fn set_class(&mut self, c: Class)[src]

pub fn set_data(&mut self, d: Data)[src]

pub fn set_file_version(&mut self, v: Version)[src]

pub fn set_object_version(&mut self, v: Version)[src]

pub fn set_osabi(&mut self, o: OSABI)[src]

pub fn set_elf_type(&mut self, e_type: Type)[src]

pub fn set_machine(&mut self, e_machine: Machine)[src]

pub fn to_le_bytes(&self) -> Vec<u8>[src]

Create Vec from this.

Examples

use elf_utilities::header::Ehdr64;
let null_ehdr : Ehdr64 = Default::default();

assert_eq!(
    vec![
        0x7f, 0x45, 0x4c, 0x46, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
    ],
    null_ehdr.to_le_bytes()
);

pub fn deserialize(buf: &[u8], start: usize) -> Result<Self, Box<dyn Error>>[src]

Trait Implementations

impl Clone for Ehdr64[src]

impl Copy for Ehdr64[src]

impl Default for Ehdr64[src]

impl<'de> Deserialize<'de> for Ehdr64[src]

impl Eq for Ehdr64[src]

impl Hash for Ehdr64[src]

impl Ord for Ehdr64[src]

impl PartialEq<Ehdr64> for Ehdr64[src]

impl PartialOrd<Ehdr64> for Ehdr64[src]

impl Serialize for Ehdr64[src]

impl StructuralEq for Ehdr64[src]

impl StructuralPartialEq for Ehdr64[src]

Auto Trait Implementations

impl RefUnwindSafe for Ehdr64

impl Send for Ehdr64

impl Sync for Ehdr64

impl Unpin for Ehdr64

impl UnwindSafe for Ehdr64

Blanket Implementations

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

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

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

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

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

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

type Owned = T

The resulting type after obtaining ownership.

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.