Struct ImageDosHeader

struct ImageDosHeader { ... }

DOS .EXE header

Fields

e_magic: U16<LittleEndian>

Magic number

e_cblp: U16<LittleEndian>

Bytes on last page of file

e_cp: U16<LittleEndian>

Pages in file

e_crlc: U16<LittleEndian>

Relocations

e_cparhdr: U16<LittleEndian>

Size of header in paragraphs

e_minalloc: U16<LittleEndian>

Minimum extra paragraphs needed

e_maxalloc: U16<LittleEndian>

Maximum extra paragraphs needed

e_ss: U16<LittleEndian>

Initial (relative) SS value

e_sp: U16<LittleEndian>

Initial SP value

e_csum: U16<LittleEndian>

Checksum

e_ip: U16<LittleEndian>

Initial IP value

e_cs: U16<LittleEndian>

Initial (relative) CS value

e_lfarlc: U16<LittleEndian>

File address of relocation table

e_ovno: U16<LittleEndian>

Overlay number

e_res: [U16<LittleEndian>; 4]

Reserved words

e_oemid: U16<LittleEndian>

OEM identifier (for e_oeminfo)

e_oeminfo: U16<LittleEndian>

OEM information; e_oemid specific

e_res2: [U16<LittleEndian>; 10]

Reserved words

e_lfanew: U32<LittleEndian>

File address of new exe header

Implementations

impl ImageDosHeader

fn parse<'data, R: ReadRef<'data>>(data: R) -> Result<&'data Self>

Read the DOS header.

Also checks that the e_magic field in the header is valid.

fn nt_headers_offset(self: &Self) -> u32

Return the file offset of the nt_headers.

impl Clone for ImageDosHeader

fn clone(self: &Self) -> ImageDosHeader

impl Copy for ImageDosHeader

impl Debug for ImageDosHeader

fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result

impl Freeze for ImageDosHeader

impl Pod for ImageDosHeader

impl RefUnwindSafe for ImageDosHeader

impl Send for ImageDosHeader

impl Sync for ImageDosHeader

impl Unpin for ImageDosHeader

impl UnsafeUnpin for ImageDosHeader

impl UnwindSafe for ImageDosHeader

impl<T> Any for ImageDosHeader

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for ImageDosHeader

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for ImageDosHeader

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> CloneToUninit for ImageDosHeader

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> From for ImageDosHeader

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for ImageDosHeader

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T, U> Into for ImageDosHeader

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for ImageDosHeader

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for ImageDosHeader

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>