[PATCH] Fix note sections in ELF core dumps

Mark Kettenis (kettenis@chello.nl)
Sat, 6 Jul 2002 01:08:46 +0200 (CEST)


Edition 4.1 of the System V Application Binary Interface says that
"The first namesz bytes in name contains a null-terminated
representation of the entry's owner or originator". This implies that
the terminating null is included in namesz, which is corroborated by
the example that follows the description. However, this is not what
the Linux kernel does when it writes its notes into an ELF core dump.
The attached patch fixes this.

Mark

--- linux-2.5.24/fs/binfmt_elf.c.orig Fri Jun 21 00:53:51 2002
+++ linux-2.5.24/fs/binfmt_elf.c Sat Jul 6 00:43:33 2002
@@ -954,7 +954,7 @@
int sz;

sz = sizeof(struct elf_note);
- sz += roundup(strlen(en->name), 4);
+ sz += roundup(strlen(en->name) + 1, 4);
sz += roundup(en->datasz, 4);

return sz;
@@ -989,7 +989,7 @@
{
struct elf_note en;

- en.n_namesz = strlen(men->name);
+ en.n_namesz = strlen(men->name) + 1;
en.n_descsz = men->datasz;
en.n_type = men->type;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/