patches/glibc/ports-2.12.1/660-debug-readlink_chk-readklinkat_chk.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed Sep 07 01:22:37 2011 +0200 (2011-09-07)
branch1.12
changeset 2655 3ba359965eb0
permissions -rw-r--r--
scripts: fix sysroot prefix dir

The sysroot prefix dir was broken in #4960f5d9f829 due to a mishap
when making the out-of-sysroot lib/ symlink: the './' was mistakenly
changed into a single '.' .

Although Jonathan suggested restoring the missing '/' to restore it to
normal operation, I prefered using an explicit pushd/popd to be extra
sure of the symlink location and target, along with a fix in the sysroot
relative directory calculation.

Reported-by: Jonathan Grundon <JGrundon@xos.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
(transplanted from e5fc5c9ea78af28d05244ba09cf718cf75470903)
yann@2437
     1
diff -dur glibc-cvs-2.9.orig/debug/readlink_chk.c glibc-cvs-2.9/debug/readlink_chk.c
yann@2437
     2
--- glibc-cvs-2.9.orig/debug/readlink_chk.c	2005-03-01 01:41:15.000000000 +0100
yann@2437
     3
+++ glibc-cvs-2.9/debug/readlink_chk.c	2009-06-01 10:59:37.000000000 +0200
yann@2437
     4
@@ -25,7 +25,7 @@
yann@2437
     5
 
yann@2437
     6
 
yann@2437
     7
 ssize_t
yann@2437
     8
-__readlink_chk (const char *path, void *buf, size_t len, size_t buflen)
yann@2437
     9
+__readlink_chk (const char *path, char *buf, size_t len, size_t buflen)
yann@2437
    10
 {
yann@2437
    11
   if (len > buflen)
yann@2437
    12
     __chk_fail ();
yann@2437
    13
diff -dur glibc-cvs-2.9.orig/debug/readlinkat_chk.c glibc-cvs-2.9/debug/readlinkat_chk.c
yann@2437
    14
--- glibc-cvs-2.9.orig/debug/readlinkat_chk.c	2006-04-24 18:56:12.000000000 +0200
yann@2437
    15
+++ glibc-cvs-2.9/debug/readlinkat_chk.c	2009-06-01 11:07:26.000000000 +0200
yann@2437
    16
@@ -21,7 +21,7 @@
yann@2437
    17
 
yann@2437
    18
 
yann@2437
    19
 ssize_t
yann@2437
    20
-__readlinkat_chk (int fd, const char *path, void *buf, size_t len,
yann@2437
    21
+__readlinkat_chk (int fd, const char *path, char *buf, size_t len,
yann@2437
    22
 		  size_t buflen)
yann@2437
    23
 {
yann@2437
    24
   if (len > buflen)