diff options
author | Conrad Meyer <cem@FreeBSD.org> | 2018-11-07 05:39:48 +0000 |
---|---|---|
committer | Conrad Meyer <cem@FreeBSD.org> | 2018-11-07 05:39:48 +0000 |
commit | 662466ff6305bdb9603c44056532e17d97c25e24 (patch) | |
tree | 43a6f99681663155d6a2a1394ba67b9476b83a32 /devel/elfutils/files/patch-libelf_elf_update.c | |
parent | lang/crystal: update to 0.27.0 (diff) |
Update devel/elfutils to 0.174
PR: 232932
Reported by: gerald
Approved by: gerald
Differential Revision: https://reviews.freebsd.org/D17832
Diffstat (limited to 'devel/elfutils/files/patch-libelf_elf_update.c')
-rw-r--r-- | devel/elfutils/files/patch-libelf_elf_update.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/devel/elfutils/files/patch-libelf_elf_update.c b/devel/elfutils/files/patch-libelf_elf_update.c new file mode 100644 index 000000000000..d09bd2c2f695 --- /dev/null +++ b/devel/elfutils/files/patch-libelf_elf_update.c @@ -0,0 +1,18 @@ +--- libelf/elf_update.c.orig 2018-09-14 03:23:36.000000000 -0700 ++++ libelf/elf_update.c +@@ -106,9 +106,13 @@ + if (elf->cmd == ELF_C_RDWR_MMAP + && (size_t) size > elf->maximum_size) + { +- if (mremap (elf->map_address, elf->maximum_size, +- size, 0) == MAP_FAILED) ++ if (munmap (elf->map_address, elf->maximum_size) != 0 || ++ mmap (elf->map_address, size, PROT_READ | PROT_WRITE, ++ MAP_SHARED | MAP_FIXED | MAP_EXCL, elf->fildes, ++ 0) == MAP_FAILED) + { ++ elf->map_address = NULL; ++ elf->flags &= ~ELF_F_MMAPPED; + __libelf_seterrno (ELF_E_WRITE_ERROR); + return -1; + } |