summaryrefslogtreecommitdiff
path: root/ABOUT-NLS
diff options
context:
space:
mode:
authorMark Wielaard <mark@klomp.org>2018-08-12 15:35:18 +0200
committerMark Wielaard <mark@klomp.org>2018-09-13 14:25:22 +0200
commitfb0457f4671e7e0f8331453348005ed6beab275e (patch)
tree5efa18a7afd9543e644e4e2ab2b14a4d9f887498 /ABOUT-NLS
parenta1e892e920bbde60a9daa1f98c105c227ee7427d (diff)
downloadelfutils-fb0457f4671e7e0f8331453348005ed6beab275e.tar.gz
libelf: Fix some issues with ELF_C_RDWR_MMAP.
When ELF_C_RDWR_MMAP is used libelf might have to write overlapping memory when moving the section data or headers. Make sure to use memmove, not memcpy. Also the size of the underlying file might have to change. That means we will have to also extend the mmap region with mremap. Since we are using direct pointers into the mmapped area we cannot move the mmap, only extend it. This might still fail if there is not enough free memory available to extend the mmap region. Two new test programs have been added. elfcopy which copies a whole elf file (using either ELF_C_WRITE or ELF_C_WRITE_MMAP). And addsections which adds new sections to an existing ELF file (using either ELF_C_RDWR or ELF_C_RDWR_MMAP). The newly added test will fail under valgrind without the fixes. Signed-off-by: Mark Wielaard <mark@klomp.org>
Diffstat (limited to 'ABOUT-NLS')
0 files changed, 0 insertions, 0 deletions