Package: scponly
Version: 4.6-1.3
Followup-For: Bug #556736

setup_chroot.sh uses a hardcoded /lib32/ to get libraries such as
libnss*, instead of /lib/ wich is the standard path for native libraries.

You can apply this patch to the uncompressed setup_chroot.sh to get it working
on x86_64 architecture.

-- System Information:
Debian Release: 5.0.3
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'testing'), (50, 'unstable'), (1, 
'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.30-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
--- setup_chroot.sh_org 2009-11-23 16:25:13.000000000 +0100
+++ setup_chroot.sh             2009-11-23 16:24:20.000000000 +0100
@@ -79,7 +79,11 @@
 #
 #      we also need to add some form of ld.so, here are some good guesses.
 #
-LDSO_LIST="/lib/ld.so /libexec/ld-elf.so /libexec/ld-elf.so.1 
/usr/libexec/ld.so /lib/ld-linux.so.2 /usr/libexec/ld-elf.so.1"
+LDSO_LIST="/lib/ld-2.7.so /lib/ld.so /libexec/ld-elf.so /libexec/ld-elf.so.1 
/usr/libexec/ld.so /lib/ld-linux.so.2 /usr/libexec/ld-elf.so.1"
+if [ x`uname -m` = "xx86_64" ]; then
+    LDSO_LIST="$LDSO_LIST /lib/libncurses.so.5 /lib/libdl.so.2 /lib/libc.so.6 
/lib64/ld-linux-x86-64.so.2"
+fi
+
 for lib in $LDSO_LIST; do
        if [ -f $lib ]; then
                LDSOFOUND=1;
@@ -199,6 +203,11 @@
        done
 fi
 
+# and a /dev/null
+[ -d $targetdir/dev ] || mkdir $targetdir/dev
+mknod -m 666 $targetdir/dev/null c 1 3
+
+
 if [ "x$USE_PW" = x0 ] ; then
     /usr/sbin/useradd -d "$targetdir" -s "/usr/sbin/scponlyc" $targetuser
     if [ $? -ne 0 ]; then

Reply via email to