AC_PREREQ([2.69])
AC_INIT([ppp],
- [2.4.10-dev],
+ [2.5.2],
[https://github.com/ppp-project/ppp])
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
AC_LANG(C)
AC_CONFIG_SRCDIR([pppd/main.c])
AC_CONFIG_HEADERS([pppd/config.h pppd/pppdconf.h pppd/plugins/pppoe/config.h])
+AC_ENABLE_STATIC(no)
# Checks for programs.
AC_PROG_CC
AM_PROG_CC_C_O
AC_PROG_INSTALL
-AC_PROG_LIBTOOL
AC_PROG_LN_S
+LT_INIT
PKG_PROG_PKG_CONFIG
crypt.h \
paths.h \
shadow.h \
+ stddef.h \
+ stdarg.h \
sys/dlpi.h \
sys/ioctl.h \
sys/socket.h \
linux/if_ether.h \
linux/if_packet.h \
netinet/if_ether.h \
- netpacket/packet.h])])
+ netpacket/packet.h])
+
+ AC_MSG_CHECKING([for struct sockaddr_ll in <linux/if_packet.h>])
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([@%:@include <linux/if_packet.h>], [sizeof(struct sockaddr_ll)])],
+ [AC_MSG_RESULT([yes])
+ AC_DEFINE(HAVE_STRUCT_SOCKADDR_LL, 1, [Struct sockaddr_ll is present on system])
+ ],
+ AC_MSG_RESULT([no]))
+])
+
AC_CHECK_SIZEOF(unsigned int)
AC_CHECK_SIZEOF(unsigned long)
AM_COND_IF([WITH_SYSTEMD],
AC_DEFINE([SYSTEMD], 1, [Enable support for systemd notifications]))
AS_IF([test "x${enable_systemd}" = "xyes"], [
- PKG_CHECK_MODULES([systemd], [systemd])])
+ PKG_CHECK_MODULES([SYSTEMD], [libsystemd])])
#
# Enable Callback Protocol Support, disabled by default
AC_DEFINE([PPP_WITH_CBCP], 1, [Have Callback Protocol support]))
#
-# Disable support for limiting session duration by maximum octets
-AC_ARG_ENABLE([maxoctets],
- AS_HELP_STRING([--disable-maxoctets], [Disable support for limiting session by maximum octets]))
-AS_IF([test "x$enable_maxoctets" != "xno"],
- AC_DEFINE([PPP_WITH_MAXOCTETS], 1, [Limit sessions by maximum number of octets]))
-
-#
-# Disable Microsoft extensions will remove CHAP and MPPE support
+# Disable Microsoft extensions will remove CHAP, MPPE and PEAP support
AC_ARG_ENABLE([microsoft-extensions],
- AS_HELP_STRING([--disable-microsoft-extensions], [Disable Microsoft CHAP / MPPE extensions]))
+ AS_HELP_STRING([--disable-microsoft-extensions], [Disable Microsoft CHAP / MPPE / PEAP extensions]))
AM_CONDITIONAL(PPP_WITH_CHAPMS, test "x${enable_microsoft_extensions}" != "xno")
AM_COND_IF([PPP_WITH_CHAPMS],
AC_DEFINE([PPP_WITH_CHAPMS], 1, [Have Microsoft CHAP support]))
-AM_CONDITIONAL(PPP_WITH_MPPE, test "x${enable_microsoft_extensions}" != "xno")
+AM_CONDITIONAL(PPP_WITH_MPPE, test "x${build_sunos}" != "xyes" && test "x${enable_microsoft_extensions}" != "xno")
AM_COND_IF([PPP_WITH_MPPE],
AC_DEFINE([PPP_WITH_MPPE], 1, [Have Microsoft MPPE support]))
# Disable PEAP support
AC_ARG_ENABLE([peap],
AS_HELP_STRING([--disable-peap], [Disable PEAP authentication support]))
-AS_IF([test "x${enable_peap}" != "xno"],
+AS_IF([test "x${enable_peap}" != "xno" && test "x${enable_microsoft_extensions}" != "xno"],
AC_DEFINE([PPP_WITH_PEAP], 1, [Have PEAP authentication support]))
-AM_CONDITIONAL([PPP_WITH_PEAP], test "x${enable_peap}" != "xno")
+AM_CONDITIONAL([PPP_WITH_PEAP], test "x${enable_peap}" != "xno" && test "x${enable_microsoft_extensions}" != "xno")
#
# Disable OpenSSL engine support
#
# Specify runtime directory
AC_ARG_WITH([plugin-dir],
- AC_HELP_STRING([--with-plugin-dir=DIR], [Specify the plugin directory for pppd]))
+ AS_HELP_STRING([--with-plugin-dir=DIR],[Specify the plugin directory for pppd]))
AS_IF([test -n "$with_plugin_dir"],
[PPPD_PLUGIN_DIR="$with_plugin_dir"],
[PPPD_PLUGIN_DIR="${libdir}/pppd/$VERSION"])
#
# Specify runtime directory
AC_ARG_WITH([runtime-dir],
- AC_HELP_STRING([--with-runtime-dir=DIR], [Specify the runtime directory for pppd]))
+ AS_HELP_STRING([--with-runtime-dir=DIR],[Specify the runtime directory for pppd]))
AS_IF([test -n "$with_runtime_dir"],
[PPPD_RUNTIME_DIR="$with_runtime_dir"],
- [PPPD_RUNTIME_DIR="${localstatedir}/run/pppd"])
+ [PPPD_RUNTIME_DIR="${runstatedir}/pppd"])
AC_SUBST(PPPD_RUNTIME_DIR)
#
# Specify runtime directory
AC_ARG_WITH([logfile-dir],
- AC_HELP_STRING([--with-logfile-dir=DIR], [Specify the log directory for pppd]))
+ AS_HELP_STRING([--with-logfile-dir=DIR],[Specify the log directory for pppd]))
AS_IF([test -n "$with_logfile_dir"],
[PPPD_LOGFILE_DIR="$with_logfile_dir"],
- [PPPD_LOGFILE_DIR="${localstatedir}/log/pppd"])
+ [PPPD_LOGFILE_DIR="${localstatedir}/log/ppp"])
AC_SUBST(PPPD_LOGFILE_DIR)
+#
+# System CA certificates path
+AC_ARG_WITH(system-ca-path,
+ AS_HELP_STRING([--with-system-ca-path=/path/to/ssl/certs], [path to system CA certificates]),
+ [
+ case "$withval" in
+ "" | y | ye | yes)
+ with_system_ca_path="${sysconfdir}/ssl/certs"
+ ;;
+ n | no)
+ ;;
+ *)
+ with_system_ca_path="$withval"
+ ;;
+ esac
+ ],[with_system_ca_path="${sysconfdir}/ssl/certs"])
+AM_CONDITIONAL(PPP_WITH_SYSTEM_CA_PATH, [test "$with_system_ca_path" != "no"])
+AM_COND_IF(PPP_WITH_SYSTEM_CA_PATH, [
+ SYSTEM_CA_PATH="$with_system_ca_path"
+])
+AC_SUBST(SYSTEM_CA_PATH)
+
#
# Check for OpenSSL
AX_CHECK_OPENSSL
-AM_CONDITIONAL(WITH_OPENSSL, test "x${with_openssl}" != "xno")
+AM_CONDITIONAL(PPP_WITH_OPENSSL, test "x${with_openssl}" != "xno")
+AM_COND_IF([PPP_WITH_OPENSSL],
+ AC_DEFINE([PPP_WITH_OPENSSL], 1, [PPP is compiled with openssl support]))
#
# Check if OpenSSL has compiled in support for various ciphers
])
AM_CONDITIONAL([OPENSSL_HAVE_MD4], test "x${ac_cv_openssl_md4}" = "xyes")
-AM_COND_IF([OPENSSL_HAVE_MD4],,
- AC_DEFINE([USE_MD4], 1, [Use MD4 included with pppd]))
+AM_COND_IF([OPENSSL_HAVE_MD4],
+ AC_DEFINE([OPENSSL_HAVE_MD4], 1, [Use MD4 included with openssl]))
AM_CONDITIONAL([OPENSSL_HAVE_MD5], test "x${ac_cv_openssl_md5}" = "xyes")
-AM_COND_IF([OPENSSL_HAVE_MD5],,
- AC_DEFINE([USE_MD5], 1, [Use MD5 included with pppd]))
+AM_COND_IF([OPENSSL_HAVE_MD5],
+ AC_DEFINE([OPENSSL_HAVE_MD5], 1, [Use MD5 included with openssl]))
AM_CONDITIONAL([OPENSSL_HAVE_SHA], test "x${ac_cv_openssl_sha}" = "xyes")
-AM_COND_IF([OPENSSL_HAVE_SHA],,
- AC_DEFINE([USE_SHA], 1, [Use SHA included with pppd]))
+AM_COND_IF([OPENSSL_HAVE_SHA],
+ AC_DEFINE([OPENSSL_HAVE_SHA], 1, [Use SHA included with openssl]))
AM_CONDITIONAL([OPENSSL_HAVE_DES], test "x${ac_cv_openssl_des}" = "xyes")
-AM_COND_IF([OPENSSL_HAVE_DES],,
- AC_DEFINE([USE_CRYPT], 1, [Use DES included with pppd]))
-
-#
-# If OpenSSL doesn't support DES, then use the one from libcrypt (glibc dropped support for this in 2.27).
-AS_IF([test "x${ac_cv_openssl_des}" = "xno" ], [
- AC_CHECK_LIB([crypt], [encrypt],
- [LIBS="$LIBS -lcrypt"],
- [AC_MSG_ERROR([OpenSSL not found or does not support DES, and libcrypt also doesn't support encrypt])]
- )
-])
+AM_COND_IF([OPENSSL_HAVE_DES],
+ AC_DEFINE([OPENSSL_HAVE_DES], 1, [Use DES included with openssl]))
#
# With libsrp support
])
])
-#
-# Some contributions require GTK/GLIB
-AC_ARG_WITH([gtk], AS_HELP_STRING([--with-gtk], [Build contributions with the GTK+ interface]))
-if test "x${with_gtk}" = "xyes"; then
- PKG_CHECK_MODULES([GTK], [gtk+-2.0])
- PKG_CHECK_MODULES([GLIB], [glib-2.0])
-fi
-AM_CONDITIONAL([WITH_GTK], test "x${with_gtk}" = "xyes")
-
AC_DEFINE_UNQUOTED(PPPD_VERSION, "$VERSION", [Version of pppd])
AC_CONFIG_FILES([
Makefile
chat/Makefile
- contrib/Makefile
- contrib/pppgetpass/Makefile
- common/Makefile
include/Makefile
- modules/Makefile
pppd/Makefile
pppd/pppd.pc
pppd/plugins/Makefile
AC_OUTPUT
-AS_IF([test "x${build_sunos}" = "xyes" ], [[
- echo "
-Setting up SunOS kernel module(s)"
- mkmkf() {
- rm -f $2
- if [ -f $1 ]; then
- echo " $2 <= $1"
- sed -e "s,@DESTDIR@,$prefix,g" \
- -e "s,@SYSCONF@,$sysconfdir,g" \
- -e "s,@CC@,$CC,g" \
- -e "s|@CFLAGS@|$CFLAGS|g" $1 > $2
- fi
- }
-
- release=`uname -r`
- karch=`/usr/bin/isainfo -k`
- makext="sol2"
- archvariant=
-
- case "$karch" in
- amd64)
- archvariant='-64x'
- ;;
- sparcv9)
- archvariant='-64'
- ;;
- *)
- ;;
- esac
-
- usegcc=$CC
- if [ -x /opt/SUNWspro/bin/cc -a "$usegcc" != gcc ] &&
- /opt/SUNWspro/bin/cc -flags >/dev/null 2>&1; then
- if [ "$archvariant" = "-64x" ]; then
- ( cd /tmp; echo "int x;" > ppp$$.c
- /opt/SUNWspro/bin/cc -c -errwarn -xchip=opteron -m64 ppp$$.c >/dev/null 2>&1 || (
- echo "WorkShop C is unable to make 64 bit modules, and your $karch system needs"
- echo "them. Consider upgrading cc on this machine."
- rm -f ppp$$.c
- exit 1
- ) || exit 1
- rm -f ppp$$.c ppp$$.o
- ) || exit 1
- fi
- elif gcc --version >/dev/null 2>&1; then
- archvariant=gcc$archvariant
- compiletype=.gcc
- if [ "$archvariant" = "gcc-64" -o"$archvariant" = "gcc-64x" ]; then
- ( cd /tmp; touch ppp$$.c
- gcc -c -m64 ppp$$.c >/dev/null 2>&1 || (
- echo "gcc is unable to make 64 bit modules, and your $karch system needs them."
- echo "Consider upgrading gcc on this machine, or switching to Sun WorkShop."
- rm -f ppp$$.c
- exit 1
- ) || exit 1
- rm -f ppp$$.c ppp$$.o
- ) || exit 1
- fi
- else
- echo "C compiler not found; hoping for the best."
- fi
-
- mkmkf solaris/Makedefs$compiletype Makedefs.com
- mkmkf solaris/Makefile.sol2$archvariant solaris/Makefile
-]])
-
echo "
$PACKAGE_NAME version $PACKAGE_VERSION
Prefix...............: $prefix
Runtime Dir..........: $PPPD_RUNTIME_DIR
Logfile Dir..........: $PPPD_LOGFILE_DIR
Plugin Dir...........: $PPPD_PLUGIN_DIR
+ System CA Path ......: ${SYSTEM_CA_PATH:-not set}
With OpenSSL.........: ${with_openssl:-yes}
With libatm..........: ${with_atm:-no}
With libpam..........: ${with_pam:-no}
CBCP.................: ${enable_cbcp:-no}
IPV6CP...............: ${enable_ipv6cp:-yes}
EAP-TLS..............: ${enable_eaptls:-yes}
- PEAP.................: ${enable_peap:-yes}
systemd notifications: ${enable_systemd:-no}
"