;;
*-*-linux*)
no_dev_ptmx=1
+ AC_DEFINE(DONT_TRY_OTHER_AF)
+ inet6_default_4in6=yes
;;
*-*-netbsd*)
need_dash_r=1
;;
*-*-solaris*)
need_dash_r=1
+ LDFLAGS="-L/usr/ucblib"
AC_DEFINE(USE_UTMPX)
;;
*-*-sysv*)
AC_CHECK_HEADERS(bstring.h endian.h lastlog.h login.h maillock.h netdb.h netgroup.h paths.h poll.h pty.h shadow.h security/pam_appl.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h sys/poll.h sys/select.h sys/stropts.h sys/sysmacros.h sys/time.h sys/ttcompat.h stddef.h util.h utmp.h utmpx.h)
# Checks for library functions.
-AC_CHECK_FUNCS(arc4random bindresvport_af freeaddrinfo gai_strerror getaddrinfo getpagesize getnameinfo innetgr md5_crypt mkdtemp openpty rresvport_af setenv seteuid setlogin setproctitle setreuid snprintf strlcat strlcpy updwtmpx vsnprintf _getpty)
+AC_CHECK_FUNCS(arc4random bindresvport_af freeaddrinfo gai_strerror getaddrinfo getnameinfo innetgr md5_crypt mkdtemp openpty rresvport_af setenv seteuid setlogin setproctitle setreuid snprintf strlcat strlcpy updwtmpx vsnprintf _getpty)
AC_CHECK_FUNC(login,
[AC_DEFINE(HAVE_LOGIN)],
[AC_CHECK_LIB(bsd, daemon, [LIBS="$LIBS -lbsd"; AC_DEFINE(HAVE_DAEMON)])]
)
+AC_CHECK_FUNC(getpagesize,
+ [AC_DEFINE(HAVE_GETPAGESIZE)],
+ [AC_CHECK_LIB(ucb, getpagesize, [LIBS="$LIBS -lucb"; AC_DEFINE(HAVE_GETPAGESIZE)])]
+)
+
AC_ARG_WITH(pam,
[ --without-pam Disable PAM support ],
[
AC_MSG_CHECKING([for OpenSSL/SSLeay directory])
for ssldir in "" $tryssldir /usr /usr/local/openssl /usr/lib/openssl /usr/local/ssl /usr/lib/ssl /usr/local /usr/pkg /opt /opt/openssl ; do
if test ! -z "$ssldir" ; then
- LIBS="$saved_LIBS -L$ssldir"
+ LIBS="$saved_LIBS -L$ssldir/lib -L$ssldir -lcrypto"
CFLAGS="$CFLAGS -I$ssldir/include"
if test "x$need_dash_r" = "x1" ; then
- LIBS="$LIBS -R$ssldir"
+ LIBS="$LIBS -R$ssldir/lib -L$ssldir"
fi
+ else
+ LIBS="$saved_LIBS -lcrypto"
fi
- LIBS="$LIBS -lcrypto"
- AC_TRY_RUN(
- [
- #include <openssl/rsa.h>
- #include <openssl/bn.h>
- #include <openssl/sha.h>
- int main(void)
- {RSA *key;key=RSA_generate_key(32,3,NULL,NULL);return(key==NULL);}
- ],
- [
- AC_DEFINE(HAVE_OPENSSL)
- found_crypto=1
- break;
- ], []
- )
- AC_TRY_RUN(
- [
- #include <ssl/rsa.h>
- #include <ssl/bn.h>
- #include <ssl/sha.h>
- int main(void)
- {RSA *key;key=RSA_generate_key(32,3,NULL,NULL);return(key==NULL);}
- ],
- [
- AC_DEFINE(HAVE_SSL)
- found_crypto=1
- break;
- ], []
- )
+ for WANTS_RSAREF in "" 1 ; do
+
+ if test ! -z "$WANTS_RSAREF" ; then
+ LIBS="$LIBS -lRSAglue -lrsaref"
+ fi
+
+ AC_TRY_RUN(
+ [
+ #include <openssl/rsa.h>
+ #include <openssl/bn.h>
+ #include <openssl/sha.h>
+ int main(void)
+ {RSA *key; char seed[2048];memset(seed, 0, sizeof(seed));
+ RAND_seed(seed, sizeof(seed));key=RSA_generate_key(32,3,NULL,NULL);
+ return(key==NULL);}
+ ],
+ [
+ AC_DEFINE(HAVE_OPENSSL)
+ found_crypto=1
+ break;
+ ], []
+ )
+ AC_TRY_RUN(
+ [
+ #include <ssl/rsa.h>
+ #include <ssl/bn.h>
+ #include <ssl/sha.h>
+ int main(void)
+ {RSA *key; char seed[2048];memset(seed, 0, sizeof(seed));
+ RAND_seed(seed, sizeof(seed));key=RSA_generate_key(32,3,NULL,NULL);
+ return(key==NULL);}
+ ],
+ [
+ AC_DEFINE(HAVE_SSL)
+ found_crypto=1
+ break;
+ ], []
+ )
+ done
+
+ if test ! -z "$found_crypto" ; then
+ break;
+ fi
done
if test -z "$found_crypto" ; then
fi
fi
LIBS="$saved_LIBS -lcrypto"
+if test ! -z $WANTS_RSAREF ; then
+ LIBS="$LIBS -lRSAglue -lrsaref"
+fi
AC_MSG_RESULT($ssldir)
# Checks for data types
AC_ARG_WITH(rsh,
[ --with-rsh=PATH Specify path to remote shell program ],
[
- if test "x$withval" != "$xno" ; then
+ if test "x$withval" != "$no" ; then
AC_DEFINE_UNQUOTED(RSH_PATH, "$withval")
fi
],
fi
if test -z "$no_dev_ptmx" ; then
- AC_CHECK_FILE("/dev/ptmx", AC_DEFINE_UNQUOTED(HAVE_DEV_PTMX))
+ AC_CHECK_FILE("/dev/ptmx",
+ [
+ AC_DEFINE_UNQUOTED(HAVE_DEV_PTMX)
+ have_dev_ptmx=1
+ ]
+ )
fi
-AC_CHECK_FILE("/dev/ptc", AC_DEFINE_UNQUOTED(HAVE_DEV_PTS_AND_PTC))
+AC_CHECK_FILE("/dev/ptc",
+ [
+ AC_DEFINE_UNQUOTED(HAVE_DEV_PTS_AND_PTC)
+ have_dev_ptc=1
+ ]
+)
# Options from here on. Some of these are preset by platform above
AC_ARG_WITH(gnome-askpass,
[ --with-gnome-askpass Build the GNOME passphrase requester (default=no)],
[
- if test x$withval = xno ; then
+ if test "x$withval" = "xno" ; then
GNOME_ASKPASS="";
else
GNOME_ASKPASS="gnome-ssh-askpass";
AC_ARG_WITH(kerberos4,
[ --with-kerberos4=PATH Enable Kerberos 4 support],
[
- if test "x$withval" != "$xno" ; then
+ if test "x$withval" != "xno" ; then
if test "x$withval" != "$xyes" ; then
CFLAGS="$CFLAGS -I${withval}/include"
AC_ARG_WITH(afs,
[ --with-afs=PATH Enable AFS support],
[
- if test "x$withval" != "$xno" ; then
+ if test "x$withval" != "xno" ; then
if test "x$withval" != "$xyes" ; then
CFLAGS="$CFLAGS -I${withval}/include"
AC_ARG_WITH(skey,
[ --with-skey Enable S/Key support],
[
- if test "x$withval" != "$xno" ; then
+ if test "x$withval" != "xno" ; then
AC_DEFINE(SKEY)
LIBS="$LIBS -lskey"
fi
AC_ARG_WITH(tcp-wrappers,
[ --with-tcp-wrappers Enable tcpwrappers support],
[
- if test "x$withval" != "$xno" ; then
- AC_DEFINE(LIBWRAP)
+ if test "x$withval" != "xno" ; then
+ saved_LIBS="$LIBS"
LIBS="$LIBS -lwrap"
+ AC_MSG_CHECKING(for libwrap)
+ AC_TRY_LINK(
+ [
+ #include <tcpd.h>
+ int deny_severity = 0, allow_severity = 0;
+ ],
+ [hosts_access(0);],
+ [
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(LIBWRAP)
+ ],
+ [
+ AC_MSG_RESULT(no)
+ AC_MSG_WARN([*** libwrap missing - tcpwrapper support disabled ***])
+ LIBS="$saved_LIBS"
+ ]
+ )
fi
]
)
AC_ARG_WITH(md5-passwords,
[ --with-md5-passwords Enable use of MD5 passwords],
[
- if test "x$withval" != "$xno" ; then
+ if test "x$withval" != "xno" ; then
AC_DEFINE(HAVE_MD5_PASSWORDS)
fi
]
]
)
+AC_MSG_CHECKING([to convert IPv4 in IPv6-mapped addresses])
+AC_ARG_WITH(4in6,
+ [ --with-4in6 Check for and convert IPv4 in IPv6 mapped addresses],
+ [
+ if test "x$withval" != "xno" ; then
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(IPV4_IN_IPV6)
+ else
+ AC_MSG_RESULT(no)
+ fi
+ ],[
+ if test "x$inet6_default_4in6" = "xyes"; then
+ AC_MSG_RESULT([yes (default)])
+ AC_DEFINE(IPV4_IN_IPV6)
+ else
+ AC_MSG_RESULT([no (default)])
+ fi
+ ]
+)
+
# Where to place sshd.pid
piddir=/var/run
AC_ARG_WITH(pid-dir,