Ken Moffat wrote:
Dug out the patch from the libc-hacker archives, but I had to apply it by hand, I think the line numbers changed a bit too much for patch to figure it out. Can you confirm this is what you want put in, and can I stick your name in the 'submitted by' ? I was thinking of calling it glibc-2.3.4-open_path_segfault-1.patch.
This one applied fine with an offset, built correctly and is running smoothly. Openssh-4.2p1 also built on the same system and running well.
-- JH
--- libc/elf/dl-load.c.jj 2005-01-19 14:12:38.000000000 +0100 +++ libc/elf/dl-load.c 2005-02-07 11:24:58.611074914 +0100 @@ -1876,7 +1876,12 @@ open_path (const char *name, size_t name must not be freed using the general free() in libc. */ if (sps->malloced) free (sps->dirs); - sps->dirs = (void *) -1; +#ifdef HAVE_Z_RELRO + /* rtld_search_dirs is attribute_relro, therefore avoid writing + into it. */ + if (sps != &rtld_search_dirs) +#endif + sps->dirs = (void *) -1; } return -1;
-- http://linuxfromscratch.org/mailman/listinfo/lfs-dev FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page