Upx_Doxygen
https://github.com/upx/upx
Public Member Functions | Protected Member Functions | List of all members
PackBSDI386 Class Reference
Inheritance diagram for PackBSDI386:
PackLinuxI386 PackUnixLe32 PackUnix Packer

Public Member Functions

 PackBSDI386 (InputFile *f)
 
virtual int getFormat () const
 
virtual const char * getName () const
 
virtual const char * getFullName (const options_t *) const
 
- Public Member Functions inherited from PackLinuxI386
 PackLinuxI386 (InputFile *f)
 
virtual void generateElfHdr (OutputFile *, void const *proto, unsigned const brka)
 
virtual const int * getCompressionMethods (int method, int level) const
 
virtual const int * getFilters () const
 
virtual bool canPack ()
 
- Public Member Functions inherited from PackUnix
virtual int getVersion () const
 
virtual int getStrategy (Filter &)
 
virtual void pack (OutputFile *fo)
 
virtual void unpack (OutputFile *fo)
 
virtual int canUnpack ()
 
- Public Member Functions inherited from Packer
virtual void assertPacker () const
 
void initPackHeader ()
 
void updatePackHeader ()
 
void doPack (OutputFile *fo)
 
void doUnpack (OutputFile *fo)
 
void doTest ()
 
void doList ()
 
void doFileInfo ()
 
virtual bool canUnpackVersion (int version) const
 
virtual bool canUnpackFormat (int format) const
 
virtual int canTest ()
 
virtual int canList ()
 

Protected Member Functions

virtual void pack1 (OutputFile *, Filter &)
 
virtual void buildLoader (const Filter *)
 
- Protected Member Functions inherited from PackLinuxI386
virtual void pack4 (OutputFile *, Filter &)
 
virtual LinkernewLinker () const
 
virtual int getLoaderPrefixSize () const
 
virtual void buildLinuxLoader (upx_byte const *const proto, unsigned const szproto, upx_byte const *const fold, unsigned const szfold, Filter const *ft)
 
virtual void patchLoader ()
 
virtual void patchLoaderChecksum ()
 
virtual void updateLoader (OutputFile *)
 
virtual int checkEhdr (const Elf_LE32_Ehdr *ehdr) const
 
 __packed_struct (cprElfHdr1) Elf_LE32_Ehdr ehdr
 
 __packed_struct_end () __packed_struct(cprElfHdr2) Elf_LE32_Ehdr ehdr
 
 __packed_struct_end () __packed_struct(cprElfHdr3) Elf_LE32_Ehdr ehdr
 
 __packed_struct_end () cprElfHdr3 elfout
 
- Protected Member Functions inherited from PackUnixLe32
 PackUnixLe32 (InputFile *f)
 
 __packed_struct (b_info) LE32 sz_unc
 
 __packed_struct_end () __packed_struct(l_info) LE32 l_checksum
 
 __packed_struct_end () __packed_struct(p_info) LE32 p_progid
 
- Protected Member Functions inherited from PackUnix
 PackUnix (InputFile *f)
 
virtual int pack2 (OutputFile *, Filter &)
 
virtual void pack3 (OutputFile *, Filter &)
 
virtual void writePackHeader (OutputFile *fo)
 
virtual bool checkCompressionRatio (unsigned, unsigned) const
 
virtual void packExtent (const Extent &x, unsigned &total_in, unsigned &total_out, Filter *, OutputFile *, unsigned hdr_len=0)
 
virtual void unpackExtent (unsigned wanted, OutputFile *fo, unsigned &total_in, unsigned &total_out, unsigned &c_adler, unsigned &u_adler, bool first_PF_X, unsigned szb_info)
 
 __packed_struct (b_info) unsigned sz_unc
 
 __packed_struct_end () __packed_struct(l_info) LE32 l_checksum
 
 __packed_struct_end () __packed_struct(p_info) unsigned p_progid
 
 __packed_struct_end () struct l_info linfo
 
- Protected Member Functions inherited from Packer
 Packer (InputFile *f)
 
virtual bool testUnpackVersion (int version) const
 
virtual bool testUnpackFormat (int format) const
 
virtual void test ()
 
virtual void list ()
 
virtual void fileInfo ()
 
virtual bool compress (upx_bytep i_ptr, unsigned i_len, upx_bytep o_ptr, const upx_compress_config_t *cconf=NULL)
 
virtual void decompress (const upx_bytep in, upx_bytep out, bool verify_checksum=true, Filter *ft=NULL)
 
virtual bool checkDefaultCompressionRatio (unsigned u_len, unsigned c_len) const
 
virtual bool checkFinalCompressionRatio (const OutputFile *fo) const
 
void compressWithFilters (Filter *ft, const unsigned overlap_range, const upx_compress_config_t *cconf, int filter_strategy=0, int inhibit_compression_check=0)
 
void compressWithFilters (Filter *ft, const unsigned overlap_range, const upx_compress_config_t *cconf, int filter_strategy, unsigned filter_buf_off, unsigned compress_ibuf_off, unsigned compress_obuf_off, const upx_bytep hdr_ptr, unsigned hdr_len, int inhibit_compression_check=0)
 
void compressWithFilters (upx_bytep i_ptr, unsigned i_len, upx_bytep o_ptr, upx_bytep f_ptr, unsigned f_len, const upx_bytep hdr_ptr, unsigned hdr_len, Filter *ft, const unsigned overlap_range, const upx_compress_config_t *cconf, int filter_strategy, int inhibit_compression_check=0)
 
virtual bool testOverlappingDecompression (const upx_bytep buf, const upx_bytep tbuf, unsigned overlap_overhead) const
 
virtual unsigned findOverlapOverhead (const upx_bytep buf, const upx_bytep tbuf, unsigned range=0, unsigned upper_limit=~0u) const
 
void verifyOverlappingDecompression (Filter *ft=NULL)
 
void verifyOverlappingDecompression (upx_bytep o_ptr, unsigned o_size, Filter *ft=NULL)
 
virtual int patchPackHeader (void *b, int blen)
 
virtual bool getPackHeader (void *b, int blen, bool allow_incompressible=false)
 
virtual bool readPackHeader (int len, bool allow_incompressible=false)
 
virtual void checkAlreadyPacked (const void *b, int blen)
 
virtual void relocateLoader ()
 
virtual upx_byte * getLoader () const
 
virtual int getLoaderSize () const
 
virtual void initLoader (const void *pdata, int plen, int small=-1)
 
void addLoader (C)
 
void addLoader (C, C)
 
void addLoader (C, C, C)
 
void addLoader (C, C, C, C)
 
void addLoader (C, C, C, C, C)
 
void addLoader (C, C, C, C, C, C)
 
void addLoader (C, C, C, C, C, C, C)
 
void addLoader (C, C, C, C, C, C, C, C)
 
void addLoader (C, C, C, C, C, C, C, C, C)
 
void addLoader (C, C, C, C, C, C, C, C, C, C)
 
void __acc_cdecl_va addLoaderVA (const char *s,...)
 
virtual bool hasLoaderSection (const char *name) const
 
virtual int getLoaderSection (const char *name, int *slen=NULL) const
 
virtual int getLoaderSectionStart (const char *name, int *slen=NULL) const
 
const int * getDefaultCompressionMethods_8 (int method, int level, int small=-1) const
 
const int * getDefaultCompressionMethods_le32 (int method, int level, int small=-1) const
 
virtual const char * getDecompressorSections () const
 
virtual unsigned getDecompressorWrkmemSize () const
 
virtual void defineDecompressorSymbols ()
 
virtual bool isValidFilter (int filter_id) const
 
virtual void optimizeFilter (Filter *, const upx_byte *, unsigned) const
 
virtual void addFilter32 (int filter_id)
 
virtual void defineFilterSymbols (const Filter *ft)
 
virtual void checkOverlay (unsigned overlay)
 
virtual void copyOverlay (OutputFile *fo, unsigned overlay, MemBuffer *buf, bool do_seek=true)
 
virtual unsigned getRandomId () const
 
int patch_be16 (void *b, int blen, unsigned old, unsigned new_)
 
int patch_be16 (void *b, int blen, const void *old, unsigned new_)
 
int patch_be32 (void *b, int blen, unsigned old, unsigned new_)
 
int patch_be32 (void *b, int blen, const void *old, unsigned new_)
 
int patch_le16 (void *b, int blen, unsigned old, unsigned new_)
 
int patch_le16 (void *b, int blen, const void *old, unsigned new_)
 
int patch_le32 (void *b, int blen, unsigned old, unsigned new_)
 
int patch_le32 (void *b, int blen, const void *old, unsigned new_)
 
void checkPatch (void *b, int blen, int boff, int size)
 
unsigned get_te16 (const void *p) const
 
unsigned get_te32 (const void *p) const
 
upx_uint64_t get_te64 (const void *p) const
 
void set_te16 (void *p, unsigned v) const
 
void set_te32 (void *p, unsigned v) const
 
void set_te64 (void *p, upx_uint64_t v) const
 

Additional Inherited Members

- Static Public Member Functions inherited from Packer
static bool isValidCompressionMethod (int method)
 
- Protected Types inherited from PackLinuxI386
enum  { UPX_ELF_MAGIC = 0x5850557f }
 
- Protected Types inherited from PackUnix
enum  { OVERHEAD = 2048 }
 
- Static Protected Member Functions inherited from PackLinuxI386
static void compileTimeAssertions ()
 
- Static Protected Member Functions inherited from Packer
static void handleStub (InputFile *fi, OutputFile *fo, unsigned size)
 
static upx_byte * optimizeReloc (upx_byte *in, unsigned relocnum, upx_byte *out, upx_byte *image, int bs, int *big, int bits)
 
static unsigned unoptimizeReloc (upx_byte **in, upx_byte *image, MemBuffer *out, int bs, int bits)
 
static upx_byte * optimizeReloc32 (upx_byte *in, unsigned relocnum, upx_byte *out, upx_byte *image, int bs, int *big)
 
static unsigned unoptimizeReloc32 (upx_byte **in, upx_byte *image, MemBuffer *out, int bs)
 
static upx_byte * optimizeReloc64 (upx_byte *in, unsigned relocnum, upx_byte *out, upx_byte *image, int bs, int *big)
 
static unsigned unoptimizeReloc64 (upx_byte **in, upx_byte *image, MemBuffer *out, int bs)
 
- Protected Attributes inherited from PackLinuxI386
unsigned n_mru
 
Elf_LE32_Phdr phdr [1]
 
l_info linfo
 
struct PackLinuxI386::Elf32_Note elfnote
 
unsigned char ei_osabi
 
char const * osabi_note
 
- Protected Attributes inherited from PackUnixLe32
LE32 sz_cpr
 
unsigned char b_method
 
unsigned char b_ftid
 
unsigned char b_cto8
 
unsigned char b_unused
 
LE32 l_magic
 
LE16 l_lsize
 
unsigned char l_version
 
unsigned char l_format
 
LE32 p_filesize
 
LE32 p_blocksize
 
- Protected Attributes inherited from PackUnix
int exetype
 
unsigned blocksize
 
unsigned progid
 
unsigned overlay_offset
 
MemBuffer loader
 
int lsize
 
MemBuffer pt_dynamic
 
int sz_dynamic
 
unsigned b_len
 
unsigned sz_cpr
 
unsigned char b_method
 
unsigned char b_ftid
 
unsigned char b_cto8
 
unsigned char b_unused
 
LE32 l_magic
 
LE16 l_lsize
 
unsigned char l_version
 
unsigned char l_format
 
unsigned p_filesize
 
unsigned p_blocksize
 
- Protected Attributes inherited from Packer
const N_BELE_RTP::AbstractPolicybele
 
InputFilefi
 
off_t file_size
 
PackHeader ph
 
int ph_format
 
int ph_version
 
MemBuffer ibuf
 
MemBuffer obuf
 
UiPackeruip
 
Linkerlinker
 

The documentation for this class was generated from the following files: