--- openssh-4.3p1-1/config.h.in 2006-02-01 03:33:49.000000000 -0800 +++ openssh-4.3p1-2/config.h.in 2006-02-01 20:41:16.134875000 -0800 @@ -77,6 +77,9 @@ /* Define if you want to specify the path to your wtmp file */ #undef CONF_WTMP_FILE +/* Define if your struct dirent doesn't contain d_ino */ +#undef DIRENT_MISSING_D_INO + /* Define if your platform needs to skip post auth file descriptor passing */ #undef DISABLE_FD_PASSING --- openssh-4.3p1-1/configure 2006-02-01 03:33:51.000000000 -0800 +++ openssh-4.3p1-2/configure 2006-02-01 20:41:11.634875000 -0800 @@ -10346,6 +10346,63 @@ rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi +echo "$as_me:$LINENO: checking whether struct dirent contains d_ino" >&5 +echo $ECHO_N "checking whether struct dirent contains d_ino... $ECHO_C" >&6 +if test "$cross_compiling" = yes; then + + { echo "$as_me:$LINENO: WARNING: cross compiling: assuming DIRENT_MISSING_D_INO" >&5 +echo "$as_me: WARNING: cross compiling: assuming DIRENT_MISSING_D_INO" >&2;} + cat >>confdefs.h <<\_ACEOF +#define DIRENT_MISSING_D_INO 1 +_ACEOF + + + +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include +#include +int main(void){struct dirent d;exit(sizeof(d.d_ino)>=0);} + +_ACEOF +rm -f conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6 +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) + + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 + +cat >>confdefs.h <<\_ACEOF +#define DIRENT_MISSING_D_INO 1 +_ACEOF + + +fi +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + echo "$as_me:$LINENO: checking for /proc/pid/fd directory" >&5 echo $ECHO_N "checking for /proc/pid/fd directory... $ECHO_C" >&6 if test -d "/proc/$$/fd" ; then @@ -26883,9 +26940,10 @@ # 1. Remove the extension, and $U if already installed. ac_i=`echo "$ac_i" | sed 's/\$U\././;s/\.o$//;s/\.obj$//'` - # 2. Add them. - ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" + ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs @@ -27157,9 +27215,9 @@ exec 5>>config.log { echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <&5 cat >&5 <<_CSEOF --- openssh-4.3p1-1/configure.ac 2006-01-29 05:22:39.000000000 -0800 +++ openssh-4.3p1-2/configure.ac 2006-02-01 20:38:45.978625000 -0800 @@ -950,6 +950,25 @@ ] ) +AC_MSG_CHECKING([whether struct dirent contains d_ino]) +AC_RUN_IFELSE( + [AC_LANG_SOURCE([[ +#include +#include +int main(void){struct dirent d;exit(sizeof(d.d_ino)>=0);} + ]])], + [AC_MSG_RESULT(yes)], + [ + AC_MSG_RESULT(no) + AC_DEFINE(DIRENT_MISSING_D_INO, 1, + [Define if your struct dirent doesn't contain d_ino]) + ], + [ + AC_MSG_WARN([cross compiling: assuming DIRENT_MISSING_D_INO]) + AC_DEFINE(DIRENT_MISSING_D_INO) + ] +) + AC_MSG_CHECKING([for /proc/pid/fd directory]) if test -d "/proc/$$/fd" ; then AC_DEFINE(HAVE_PROC_PID, 1, [Define if you have /proc/$pid/fd]) --- openssh-4.3p1-1/scp.c 2006-01-31 03:11:38.000000000 -0800 +++ openssh-4.3p1-2/scp.c 2006-02-01 20:41:20.619250000 -0800 @@ -695,8 +695,10 @@ return; } while ((dp = readdir(dirp)) != NULL) { +#ifndef DIRENT_MISSING_D_INO if (dp->d_ino == 0) continue; +#endif if (!strcmp(dp->d_name, ".") || !strcmp(dp->d_name, "..")) continue; if (strlen(name) + 1 + strlen(dp->d_name) >= sizeof(path) - 1) {