WIP unpacking ELF shared library
modified: Makefile modified: lzma-sdk modified: p_lx_elf.cpp modified: p_lx_elf.h modified: p_mach.cpp modified: p_unix.cpp modified: p_unix.h modified: packer.cpp modified: packer.h modified: stub/arm64-linux.elf-fold.h modified: stub/src/arm64-linux.elf-fold.S modified: stub/tmp/arm64-linux.elf-fold.map
This commit is contained in:
committed by
Markus F.X.J. Oberhumer
parent
fd6837b267
commit
23f63e4196
@@ -41,6 +41,7 @@ public:
|
||||
virtual ~PackLinuxElf();
|
||||
/*virtual void buildLoader(const Filter *);*/
|
||||
virtual bool canUnpackVersion(int version) const { return (version >= 11); }
|
||||
virtual int canUnpack() { return super::canUnpack(); }
|
||||
|
||||
protected:
|
||||
virtual const int *getCompressionMethods(int method, int level) const;
|
||||
@@ -118,6 +119,7 @@ protected:
|
||||
virtual void PackLinuxElf32help1(InputFile *f);
|
||||
virtual int checkEhdr(Elf32_Ehdr const *ehdr) const;
|
||||
virtual bool canPack();
|
||||
virtual int canUnpack();
|
||||
|
||||
// These ARM routines are essentially common to big/little endian,
|
||||
// but the class hierarchy splits after this class.
|
||||
@@ -259,6 +261,7 @@ protected:
|
||||
virtual void PackLinuxElf64help1(InputFile *f);
|
||||
virtual int checkEhdr(Elf64_Ehdr const *ehdr) const;
|
||||
virtual bool canPack();
|
||||
virtual int canUnpack();
|
||||
|
||||
virtual void pack1(OutputFile *, Filter &); // generate executable header
|
||||
virtual int pack2(OutputFile *, Filter &); // append compressed data
|
||||
@@ -534,6 +537,7 @@ public:
|
||||
virtual const char *getName() const { return "linux/i386"; }
|
||||
virtual const char *getFullName(const options_t *) const { return "i386-linux.elf"; }
|
||||
virtual const int *getFilters() const;
|
||||
virtual int canUnpack();
|
||||
|
||||
protected:
|
||||
virtual void pack1(OutputFile *, Filter &); // generate executable header
|
||||
|
||||
Reference in New Issue
Block a user