mirror of https://github.com/upx/upx.git
After upx-3.96, the de-compressing stub for ELF moved
... so unpack() of newly-compressed ELF by upx-3.96 now says "CantUnpackException: need a newer version of UPX" https://github.com/upx/upx/issues/595 modified: p_lx_elf.h modified: packer.h
This commit is contained in:
parent
36e94e58d0
commit
a13b4d10d9
|
@ -40,6 +40,7 @@ public:
|
|||
PackLinuxElf(InputFile *f);
|
||||
virtual ~PackLinuxElf();
|
||||
/*virtual void buildLoader(const Filter *);*/
|
||||
virtual int getVersion() const override { return 14; } // upx-3.96 cannot upack, for instance
|
||||
virtual bool canUnpackVersion(int version) const { return (version >= 11); }
|
||||
virtual int canUnpack() { return super::canUnpack(); }
|
||||
|
||||
|
|
|
@ -116,6 +116,8 @@ public:
|
|||
virtual ~Packer();
|
||||
virtual void assertPacker() const;
|
||||
|
||||
// getVersion() enables detecting forward incompatibility of unpack()
|
||||
// by old upx when newer upx changes the format of compressed output.
|
||||
virtual int getVersion() const = 0;
|
||||
// A unique integer ID for this executable format. See conf.h.
|
||||
virtual int getFormat() const = 0;
|
||||
|
|
Loading…
Reference in New Issue