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

Reply via email to