X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=src%2Flibelfu%2Fmodelops%2Flayout.c;h=2fd610ce3b0808f6858854c0aca0666b3d5ac4d4;hb=9ebc757b5592844e47bcddfba7335d2e7c590a8b;hp=f8a30ed4e2d66b4a40eebbfd45fb70e77abeeb84;hpb=ba9a2612324c2cfaf63d64a722a1a0ecc5793de7;p=centaur.git diff --git a/src/libelfu/modelops/layout.c b/src/libelfu/modelops/layout.c index f8a30ed..2fd610c 100644 --- a/src/libelfu/modelops/layout.c +++ b/src/libelfu/modelops/layout.c @@ -101,7 +101,8 @@ static ElfuPhdr* appendPhdr(ElfuElf *me) &lowestOffs, &highestOffsEnd); if (phdr_maxsz < (me->ehdr.e_phnum + 1) * me->ehdr.e_phentsize && phdrmp == lowestAddr - && phdrmp == lowestOffs) { + && phdrmp == lowestOffs + && (lowestAddr->phdr.p_vaddr >= 2 * lowestAddr->phdr.p_align)) { ElfuPhdr *mp; ElfuScn *ms; GElf_Word size = ROUNDUP(me->ehdr.e_phentsize, phdrmp->phdr.p_align);