Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

ht_ne Class Reference

#include <htne.h>

Inheritance diagram for ht_ne:

ht_format_group ht_format_viewer ht_viewer ht_view Object List of all members.

Public Member Functions

void init (bounds *b, ht_streamfile *file, format_viewer_if **ifs, ht_format_group *format_group, FILEOFS h)
virtual void done ()
virtual void loc_enum_start ()
virtual bool loc_enum_next (ht_format_loc *loc)

Protected Member Functions

bool create_fake_segment ()
bool relocate (ht_reloc_file *rf)
bool relocate_single (ht_reloc_file *rf, UINT seg, FILEOFS ofs, UINT type, UINT flags, word value_seg, word value_ofs)

Protected Attributes

bool loc_enum

Member Function Documentation

bool ht_ne::create_fake_segment  )  [protected]
 

Definition at line 245 of file htne.cc.

References NE_HEADER::cseg, ht_ne_shared_data::fake_segment, ht_ne_shared_data::hdr, malloc(), NE_DATA, ne_segment_headers::segment_count, ne_segment_headers::segments, ht_ne_shared_data::segments, and UINT.

Referenced by relocate().

void ht_ne::done  )  [virtual]
 

Reimplemented from ht_format_group.

Definition at line 195 of file htne.cc.

References ht_tree::destroy(), ht_list::destroy(), ht_format_group::done(), ht_ne_shared_data::entrypoints, ht_ne_shared_data::imports, ht_ne_shared_data::modnames, ht_ne_shared_data::modnames_count, ne_segment_headers::segments, ht_ne_shared_data::segments, and UINT.

void ht_ne::init bounds *  b,
ht_streamfile file,
format_viewer_if **  ifs,
ht_format_group format_group,
FILEOFS  h
 

Definition at line 84 of file htne.cc.

References buf, create_host_int(), create_host_struct(), DESC_NE, ht_reloc_file::done(), dword, errorbox, ht_ne_shared_data::fake_segment, FILEOFS, ht_reloc_file::finalize(), ht_streamfile::get_filename(), getstrp(), ht_ne_reloc_file::init(), ht_clist::init(), Object::init(), ht_format_group::init_ifs(), little_endian, LOG, LOG_EX, LOG_WARN, malloc(), NE_ENTRYPOINT_FIXED_struct, NE_ENTRYPOINT_HEADER_struct, NE_ENTRYPOINT_MOVABLE_struct, NE_HASRELOC, NE_HEADER_struct, NE_SEGMENT_struct, NULL, ht_stream::read(), relocate(), ht_streamfile::seek(), ht_clist::set(), UINT, VIEW_DEBUG_NAME, VO_BROWSABLE, VO_RESIZE, and VO_SELECTABLE.

bool ht_ne::loc_enum_next ht_format_loc loc  )  [virtual]
 

Reimplemented from ht_format_viewer.

Definition at line 229 of file htne.cc.

References ht_streamfile::get_size(), ht_ne_shared_data::hdr_ofs, ht_format_loc::length, loc_enum, ht_format_loc::name, and ht_format_loc::start.

void ht_ne::loc_enum_start  )  [virtual]
 

Reimplemented from ht_format_viewer.

Definition at line 224 of file htne.cc.

bool ht_ne::relocate ht_reloc_file rf  )  [protected]
 

Definition at line 262 of file htne.cc.

References buf, create_fake_segment(), create_host_int(), create_host_struct(), dword, ht_ne_shared_data::fake_segment, FILEOFS, NE_HEADER::flags, ht_ne_shared_data::hdr, ht_ne_shared_data::imports, ht_stree::init(), ht_stree::insert(), little_endian, NE_RELOC_IMPORT::module, NE_RELOC_IMPORT::name_ofs, NE_FLAGS_SELFLOAD, NE_get_seg_ofs(), NE_get_seg_psize(), NE_HASRELOC, NE_RELOC_FIXUP_struct, NE_RELOC_HEADER_struct, NE_RELOC_IMPORT_struct, NE_RELOC_INTERNAL_struct, NE_RF_IMPORT_NAME, NE_RF_IMPORT_ORD, NE_RF_INTERNAL, NE_RF_OSFIXUP, NE_RF_RT_MASK, NULL, NE_RELOC_INTERNAL::ofs, NE_RELOC_IMPORT::ord, ht_stream::read(), relocate_single(), ht_streamfile::seek(), NE_RELOC_INTERNAL::seg, ne_segment_headers::segment_count, ne_segment_headers::segments, ht_ne_shared_data::segments, and UINT.

Referenced by init().

bool ht_ne::relocate_single ht_reloc_file rf,
UINT  seg,
FILEOFS  ofs,
UINT  type,
UINT  flags,
word  value_seg,
word  value_ofs
[protected]
 

Definition at line 343 of file htne.cc.

References buf, create_host_int(), FILEOFS, ht_reloc_file::insert_reloc(), little_endian, NE_addr_to_ofs(), NE_MAKE_ADDR, NE_RF_ADD, NE_RT_MASK, NE_RT_OFS16, NE_RT_OFS32, NE_RT_OFS8, NE_RT_PTR32, NE_RT_PTR48, NE_RT_SEG16, NEAddress, ht_stream::read(), ht_streamfile::seek(), UINT, and word.

Referenced by relocate().


Member Data Documentation

bool ht_ne::loc_enum [protected]
 

Definition at line 89 of file htne.h.

Referenced by loc_enum_next().


The documentation for this class was generated from the following files:
Generated on Fri May 7 21:16:00 2004 by doxygen 1.3.5