renamed xml plugin to smp to avoid confusion

added some dependency checks to configure
configure checks ClearSilver and fastcgi
cleanups in the build system here and there
This commit is contained in:
Martin Willi 2008-03-28 12:44:01 +00:00
parent 892fb43b12
commit 6b9290ff12
11 changed files with 467 additions and 431 deletions

View File

@ -27,502 +27,446 @@ dnl =================================
AC_ARG_WITH(
[default-pkcs11],
AS_HELP_STRING([--with-default-pkcs11=lib],[set the default PKCS11 library other than "/usr/lib/opensc-pkcs11.so"]),
[AC_DEFINE_UNQUOTED(PKCS11_DEFAULT_LIB, "$withval")],
[AC_DEFINE_UNQUOTED(PKCS11_DEFAULT_LIB, "/usr/lib/opensc-pkcs11.so")]
[default-pkcs11],
AS_HELP_STRING([--with-default-pkcs11=lib],[set the default PKCS11 library other than "/usr/lib/opensc-pkcs11.so"]),
[AC_DEFINE_UNQUOTED(PKCS11_DEFAULT_LIB, "$withval")],
[AC_DEFINE_UNQUOTED(PKCS11_DEFAULT_LIB, "/usr/lib/opensc-pkcs11.so")]
)
AC_ARG_WITH(
[xauth-module],
AS_HELP_STRING([--with-xauth-module=lib],[set the path to the XAUTH module]),
[AC_DEFINE_UNQUOTED(XAUTH_DEFAULT_LIB, "$withval")],
[xauth-module],
AS_HELP_STRING([--with-xauth-module=lib],[set the path to the XAUTH module]),
[AC_DEFINE_UNQUOTED(XAUTH_DEFAULT_LIB, "$withval")],
)
AC_ARG_WITH(
[random-device],
AS_HELP_STRING([--with-random-device=dev],[set the device for real random data other than "/dev/random"]),
[AC_DEFINE_UNQUOTED(DEV_RANDOM, "$withval")],
[AC_DEFINE_UNQUOTED(DEV_RANDOM, "/dev/random")]
[random-device],
AS_HELP_STRING([--with-random-device=dev],[set the device for real random data other than "/dev/random"]),
[AC_DEFINE_UNQUOTED(DEV_RANDOM, "$withval")],
[AC_DEFINE_UNQUOTED(DEV_RANDOM, "/dev/random")]
)
AC_ARG_WITH(
[resolv-conf],
AS_HELP_STRING([--with-resolv-conf=file],[set the file to store DNS server information other than "sysconfdir/resolv.conf"]),
[AC_DEFINE_UNQUOTED(RESOLV_CONF, "$withval")],
[AC_DEFINE_UNQUOTED(RESOLV_CONF, "${sysconfdir}/resolv.conf")]
[resolv-conf],
AS_HELP_STRING([--with-resolv-conf=file],[set the file to store DNS server information other than "sysconfdir/resolv.conf"]),
[AC_DEFINE_UNQUOTED(RESOLV_CONF, "$withval")],
[AC_DEFINE_UNQUOTED(RESOLV_CONF, "${sysconfdir}/resolv.conf")]
)
AC_ARG_WITH(
[urandom-device],
AS_HELP_STRING([--with-urandom-device=dev],[set the device for pseudo random data other than "/dev/urandom"]),
[AC_DEFINE_UNQUOTED(DEV_URANDOM, "$withval")],
[AC_DEFINE_UNQUOTED(DEV_URANDOM, "/dev/urandom")]
[urandom-device],
AS_HELP_STRING([--with-urandom-device=dev],[set the device for pseudo random data other than "/dev/urandom"]),
[AC_DEFINE_UNQUOTED(DEV_URANDOM, "$withval")],
[AC_DEFINE_UNQUOTED(DEV_URANDOM, "/dev/urandom")]
)
AC_ARG_WITH(
[piddir],
AS_HELP_STRING([--with-piddir=dir],[path for PID and UNIX socket files other than "/var/run"]),
[AC_SUBST(piddir, "$withval")],
[AC_SUBST(piddir, "/var/run")]
[piddir],
AS_HELP_STRING([--with-piddir=dir],[path for PID and UNIX socket files other than "/var/run"]),
[AC_SUBST(piddir, "$withval")],
[AC_SUBST(piddir, "/var/run")]
)
AC_ARG_WITH(
[ipsecdir],
AS_HELP_STRING([--with-ipsecdir=dir],[installation path for ipsec tools other than "libexecdir/ipsec"]),
[AC_SUBST(ipsecdir, "$withval")],
[AC_SUBST(ipsecdir, "${libexecdir}/ipsec")]
[ipsecdir],
AS_HELP_STRING([--with-ipsecdir=dir],[installation path for ipsec tools other than "libexecdir/ipsec"]),
[AC_SUBST(ipsecdir, "$withval")],
[AC_SUBST(ipsecdir, "${libexecdir}/ipsec")]
)
AC_SUBST(plugindir, "${ipsecdir}/plugins")
AC_ARG_WITH(
[plugindir],
AS_HELP_STRING([--with-plugindir=dir],[installation path for plugins other than "ipsecdir/plugins"]),
[AC_SUBST(plugindir, "$withval")],
[AC_SUBST(plugindir, "${ipsecdir}/plugins")]
[plugindir],
AS_HELP_STRING([--with-plugindir=dir],[installation path for plugins other than "ipsecdir/plugins"]),
[AC_SUBST(plugindir, "$withval")],
[AC_SUBST(plugindir, "${ipsecdir}/plugins")]
)
AC_ARG_WITH(
[sim-reader],
AS_HELP_STRING([--with-sim-reader=library.so],[library containing the sim_run_alg()/sim_get_triplet() function for EAP-SIM]),
[AC_SUBST(simreader, "$withval")],
[AC_SUBST(simreader, "${plugindir}/libeapsim-file.so")]
[sim-reader],
AS_HELP_STRING([--with-sim-reader=library.so],[library containing the sim_run_alg()/sim_get_triplet() function for EAP-SIM]),
[AC_SUBST(simreader, "$withval")],
[AC_SUBST(simreader, "${plugindir}/libeapsim-file.so")]
)
AC_ARG_WITH(
[linux-headers],
AS_HELP_STRING([--with-linux-headers=dir],[use the linux header files in dir instead of the supplied ones in "src/include"]),
[AC_SUBST(linuxdir, "$withval")], [AC_SUBST(linuxdir, "../include")]
[linux-headers],
AS_HELP_STRING([--with-linux-headers=dir],[use the linux header files in dir instead of the supplied ones in "src/include"]),
[AC_SUBST(linuxdir, "$withval")], [AC_SUBST(linuxdir, "../include")]
)
AC_SUBST(LINUX_HEADERS)
AC_ARG_WITH(
[routing-table],
AS_HELP_STRING([--with-routing-table=num],[use routing table for IPsec routes (default: 220)]),
[AC_DEFINE_UNQUOTED(IPSEC_ROUTING_TABLE, $withval) AC_SUBST(IPSEC_ROUTING_TABLE, "$withval")],
[AC_DEFINE_UNQUOTED(IPSEC_ROUTING_TABLE, 220) AC_SUBST(IPSEC_ROUTING_TABLE, "220")]
[routing-table],
AS_HELP_STRING([--with-routing-table=num],[use routing table for IPsec routes (default: 220)]),
[AC_DEFINE_UNQUOTED(IPSEC_ROUTING_TABLE, $withval) AC_SUBST(IPSEC_ROUTING_TABLE, "$withval")],
[AC_DEFINE_UNQUOTED(IPSEC_ROUTING_TABLE, 220) AC_SUBST(IPSEC_ROUTING_TABLE, "220")]
)
AC_ARG_WITH(
[routing-table-prio],
AS_HELP_STRING([--with-routing-table-prio=prio],[priority for IPsec routing table (default: 220)]),
[AC_DEFINE_UNQUOTED(IPSEC_ROUTING_TABLE_PRIO, $withval) AC_SUBST(IPSEC_ROUTING_TABLE_PRIO, "$withval")],
[AC_DEFINE_UNQUOTED(IPSEC_ROUTING_TABLE_PRIO, 220) AC_SUBST(IPSEC_ROUTING_TABLE_PRIO, "220")]
[routing-table-prio],
AS_HELP_STRING([--with-routing-table-prio=prio],[priority for IPsec routing table (default: 220)]),
[AC_DEFINE_UNQUOTED(IPSEC_ROUTING_TABLE_PRIO, $withval) AC_SUBST(IPSEC_ROUTING_TABLE_PRIO, "$withval")],
[AC_DEFINE_UNQUOTED(IPSEC_ROUTING_TABLE_PRIO, 220) AC_SUBST(IPSEC_ROUTING_TABLE_PRIO, "220")]
)
AC_ARG_WITH(
[uid],
AS_HELP_STRING([--with-uid=uid],[change user of the daemons to UID after startup (default is 0).]),
[AC_DEFINE_UNQUOTED(IPSEC_UID, $withval) AC_SUBST(ipsecuid, "$withval")],
[AC_DEFINE_UNQUOTED(IPSEC_UID, 0) AC_SUBST(ipsecuid, "0")]
[uid],
AS_HELP_STRING([--with-uid=uid],[change user of the daemons to UID after startup (default is 0).]),
[AC_DEFINE_UNQUOTED(IPSEC_UID, $withval) AC_SUBST(ipsecuid, "$withval")],
[AC_DEFINE_UNQUOTED(IPSEC_UID, 0) AC_SUBST(ipsecuid, "0")]
)
AC_ARG_WITH(
[gid],
AS_HELP_STRING([--with-gid=gid],[change group of the daemons to GID after startup (default is 0).]),
[AC_DEFINE_UNQUOTED(IPSEC_GID, $withval) AC_SUBST(ipsecgid, "$withval")],
[AC_DEFINE_UNQUOTED(IPSEC_GID, 0) AC_SUBST(ipsecgid, "0")]
[gid],
AS_HELP_STRING([--with-gid=gid],[change group of the daemons to GID after startup (default is 0).]),
[AC_DEFINE_UNQUOTED(IPSEC_GID, $withval) AC_SUBST(ipsecgid, "$withval")],
[AC_DEFINE_UNQUOTED(IPSEC_GID, 0) AC_SUBST(ipsecgid, "0")]
)
AC_ARG_ENABLE(
[curl],
AS_HELP_STRING([--enable-curl],[enable CURL fetcher plugin to fetch files via libcurl (default is NO). Requires libcurl.]),
[if test x$enableval = xyes; then
curl=true
fi]
[curl],
AS_HELP_STRING([--enable-curl],[enable CURL fetcher plugin to fetch files via libcurl (default is NO). Requires libcurl.]),
[if test x$enableval = xyes; then
curl=true
fi]
)
AM_CONDITIONAL(USE_CURL, test x$curl = xtrue)
AC_ARG_ENABLE(
[ldap],
AS_HELP_STRING([--enable-ldap],[enable LDAP fetching plugin to fetch files via libldap (default is NO). Requires openLDAP.]),
[if test x$enableval = xyes; then
ldap=true
fi]
[ldap],
AS_HELP_STRING([--enable-ldap],[enable LDAP fetching plugin to fetch files via libldap (default is NO). Requires openLDAP.]),
[if test x$enableval = xyes; then
ldap=true
fi]
)
AM_CONDITIONAL(USE_LDAP, test x$ldap = xtrue)
AC_ARG_ENABLE(
[aes],
AS_HELP_STRING([--disable-aes],[disable own AES software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
aes=true
else
aes=false
fi],
aes=true
[aes],
AS_HELP_STRING([--disable-aes],[disable own AES software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
aes=true
else
aes=false
fi],
aes=true
)
AM_CONDITIONAL(USE_AES, test x$aes = xtrue)
AC_ARG_ENABLE(
[des],
AS_HELP_STRING([--disable-des],[disable own DES/3DES software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
des=true
else
des=false
fi],
des=true
[des],
AS_HELP_STRING([--disable-des],[disable own DES/3DES software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
des=true
else
des=false
fi],
des=true
)
AM_CONDITIONAL(USE_DES, test x$des = xtrue)
AC_ARG_ENABLE(
[md5],
AS_HELP_STRING([--disable-md5],[disable own MD5 software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
md5=true
else
md5=false
fi],
md5=true
[md5],
AS_HELP_STRING([--disable-md5],[disable own MD5 software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
md5=true
else
md5=false
fi],
md5=true
)
AM_CONDITIONAL(USE_MD5, test x$md5 = xtrue)
AC_ARG_ENABLE(
[sha1],
AS_HELP_STRING([--disable-sha1],[disable own SHA1 software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
sha1=true
else
sha1=false
fi],
sha1=true
[sha1],
AS_HELP_STRING([--disable-sha1],[disable own SHA1 software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
sha1=true
else
sha1=false
fi],
sha1=true
)
AM_CONDITIONAL(USE_SHA1, test x$sha1 = xtrue)
AC_ARG_ENABLE(
[sha2],
AS_HELP_STRING([--disable-sha2],[disable own SHA256/SHA384/SHA512 software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
sha2=true
else
sha2=false
fi],
sha2=true
[sha2],
AS_HELP_STRING([--disable-sha2],[disable own SHA256/SHA384/SHA512 software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
sha2=true
else
sha2=false
fi],
sha2=true
)
AM_CONDITIONAL(USE_SHA2, test x$sha2 = xtrue)
AC_ARG_ENABLE(
[fips-prf],
AS_HELP_STRING([--disable-fips-prf],[disable FIPS PRF software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
fips_prf=true
else
fips_prf=false
fi],
fips_prf=true
[fips-prf],
AS_HELP_STRING([--disable-fips-prf],[disable FIPS PRF software implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
fips_prf=true
else
fips_prf=false
fi],
fips_prf=true
)
AM_CONDITIONAL(USE_FIPS_PRF, test x$fips_prf = xtrue)
AC_ARG_ENABLE(
[gmp],
AS_HELP_STRING([--disable-gmp],[disable own GNU MP (libgmp) based crypto implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
gmp=true
else
gmp=false
fi],
gmp=true
[gmp],
AS_HELP_STRING([--disable-gmp],[disable own GNU MP (libgmp) based crypto implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
gmp=true
else
gmp=false
fi],
gmp=true
)
AM_CONDITIONAL(USE_GMP, test x$gmp = xtrue)
AC_ARG_ENABLE(
[x509],
AS_HELP_STRING([--disable-x509],[disable own X509 certificate implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
x509=true
else
x509=false
fi],
x509=true
[x509],
AS_HELP_STRING([--disable-x509],[disable own X509 certificate implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
x509=true
else
x509=false
fi],
x509=true
)
AM_CONDITIONAL(USE_X509, test x$x509 = xtrue)
AC_ARG_ENABLE(
[hmac],
AS_HELP_STRING([--disable-hmac],[disable HMAC crypto implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
hmac=true
else
hmac=false
fi],
hmac=true
[hmac],
AS_HELP_STRING([--disable-hmac],[disable HMAC crypto implementation plugin. (default is NO).]),
[if test x$enableval = xyes; then
hmac=true
else
hmac=false
fi],
hmac=true
)
AM_CONDITIONAL(USE_HMAC, test x$hmac = xtrue)
AC_ARG_ENABLE(
[mysql],
AS_HELP_STRING([--enable-mysql],[enable MySQL database support (default is NO). Requires libmysqlclient_r.]),
[if test x$enableval = xyes; then
mysql=true
fi]
[mysql],
AS_HELP_STRING([--enable-mysql],[enable MySQL database support (default is NO). Requires libmysqlclient_r.]),
[if test x$enableval = xyes; then
mysql=true
fi]
)
AM_CONDITIONAL(USE_MYSQL, test x$mysql = xtrue)
AC_ARG_ENABLE(
[sqlite],
AS_HELP_STRING([--enable-sqlite],[enable SQLite database support (default is NO). Requires libsqlite3.]),
[if test x$enableval = xyes; then
sqlite=true
fi]
[sqlite],
AS_HELP_STRING([--enable-sqlite],[enable SQLite database support (default is NO). Requires libsqlite3.]),
[if test x$enableval = xyes; then
sqlite=true
fi]
)
AM_CONDITIONAL(USE_SQLITE, test x$sqlite = xtrue)
AC_ARG_ENABLE(
[stroke],
AS_HELP_STRING([--disable-stroke],[disable charons stroke (pluto compatibility) configuration backend. (default is NO).]),
[if test x$enableval = xyes; then
stroke=true
else
stroke=false
fi],
stroke=true
[stroke],
AS_HELP_STRING([--disable-stroke],[disable charons stroke (pluto compatibility) configuration backend. (default is NO).]),
[if test x$enableval = xyes; then
stroke=true
else
stroke=false
fi],
stroke=true
)
AM_CONDITIONAL(USE_STROKE, test x$stroke = xtrue)
AC_ARG_ENABLE(
[med-db],
AS_HELP_STRING([--enable-med-db],[enable MySQL mediation database plugin (default is NO).]),
[if test x$enableval = xyes; then
med_db=true
AC_DEFINE(LIBDBUS)
fi]
[med-db],
AS_HELP_STRING([--enable-med-db],[enable MySQL mediation database plugin (default is NO).]),
[if test x$enableval = xyes; then
med_db=true
fi]
)
AM_CONDITIONAL(USE_MED_DB, test x$med_db = xtrue)
AC_ARG_ENABLE(
[dbus],
AS_HELP_STRING([--enable-dbus],[enable DBUS configuration and control interface (default is NO). Requires libdbus.]),
[if test x$enableval = xyes; then
dbus=true
AC_DEFINE(LIBDBUS)
fi]
[smp],
AS_HELP_STRING([--enable-smp],[enable SMP configuration and control interface (default is NO). Requires libxml.]),
[if test x$enableval = xyes; then
smp=true
fi]
)
AM_CONDITIONAL(USE_LIBDBUS, test x$dbus = xtrue)
AC_ARG_ENABLE(
[xml],
AS_HELP_STRING([--enable-xml],[enable XML configuration and control interface (default is NO). Requires libxml.]),
[if test x$enableval = xyes; then
xml=true
AC_DEFINE(LIBXML)
fi]
[sql],
AS_HELP_STRING([--enable-sql],[enable SQL database configuration backend (default is NO).]),
[if test x$enableval = xyes; then
sql=true
fi]
)
AM_CONDITIONAL(USE_LIBXML, test x$xml = xtrue)
AC_ARG_ENABLE(
[sql],
AS_HELP_STRING([--enable-sql],[enable SQL database configuration backend (default is NO).]),
[if test x$enableval = xyes; then
sql=true
fi]
[smartcard],
AS_HELP_STRING([--enable-smartcard],[enable smartcard support (default is NO).]),
[if test x$enableval = xyes; then
smartcard=true
fi]
)
AM_CONDITIONAL(USE_SQL, test x$sql = xtrue)
AC_ARG_ENABLE(
[smartcard],
AS_HELP_STRING([--enable-smartcard],[enable smartcard support (default is NO).]),
[if test x$enableval = xyes; then
smartcard=true
AC_DEFINE(SMARTCARD)
fi]
[cisco-quirks],
AS_HELP_STRING([--enable-cisco-quirks],[enable support of Cisco VPN client (default is NO).]),
[if test x$enableval = xyes; then
cisco_quirks=true
fi]
)
AM_CONDITIONAL(USE_SMARTCARD, test x$smartcard = xtrue)
AC_ARG_ENABLE(
[cisco-quirks],
AS_HELP_STRING([--enable-cisco-quirks],[enable support of Cisco VPN client (default is NO).]),
[if test x$enableval = xyes; then
cisco_quirks=true
fi]
[leak-detective],
AS_HELP_STRING([--enable-leak-detective],[enable malloc hooks to find memory leaks (default is NO).]),
[if test x$enableval = xyes; then
leak_detective=true
fi]
)
AM_CONDITIONAL(USE_CISCO_QUIRKS, test x$cisco_quirks = xtrue)
AC_ARG_ENABLE(
[leak-detective],
AS_HELP_STRING([--enable-leak-detective],[enable malloc hooks to find memory leaks (default is NO).]),
[if test x$enableval = xyes; then
leak_detective=true
fi]
[unit-tests],
AS_HELP_STRING([--enable-unit-tests],[enable unit tests on IKEv2 daemon startup (default is NO).]),
[if test x$enableval = xyes; then
unittest=true
fi]
)
AM_CONDITIONAL(USE_LEAK_DETECTIVE, test x$leak_detective = xtrue)
AC_ARG_ENABLE(
[unit-tests],
AS_HELP_STRING([--enable-unit-tests],[enable unit tests on IKEv2 daemon startup (default is NO).]),
[if test x$enableval = xyes; then
unittest=true
fi]
[eap-sim],
AS_HELP_STRING([--enable-eap-sim],[build SIM authenication module for EAP (default is NO).]),
[if test x$enableval = xyes; then
eap_sim=true
fi]
)
AM_CONDITIONAL(USE_UNIT_TESTS, test x$unittest = xtrue)
AC_ARG_ENABLE(
[eap-sim],
AS_HELP_STRING([--enable-eap-sim],[build SIM authenication module for EAP (default is NO).]),
[if test x$enableval = xyes; then
eap_sim=true
fi]
[eap-identity],
AS_HELP_STRING([--enable-eap-identity],[build EAP module providing EAP-Identity helper (default is NO).]),
[if test x$enableval = xyes; then
eap_identity=true
fi]
)
AM_CONDITIONAL(USE_EAP_SIM, test x$eap_sim = xtrue)
AC_ARG_ENABLE(
[eap-identity],
AS_HELP_STRING([--enable-eap-identity],[build EAP module providing EAP-Identity helper (default is NO).]),
[if test x$enableval = xyes; then
eap_identity=true
fi]
[eap-md5],
AS_HELP_STRING([--enable-eap-md5],[build MD5 (CHAP) authenication module for EAP (default is NO).]),
[if test x$enableval = xyes; then
eap_md5=true
fi]
)
AM_CONDITIONAL(USE_EAP_IDENTITY, test x$eap_identity = xtrue)
AC_ARG_ENABLE(
[eap-md5],
AS_HELP_STRING([--enable-eap-md5],[build MD5 (CHAP) authenication module for EAP (default is NO).]),
[if test x$enableval = xyes; then
eap_md5=true
fi]
[eap-aka],
AS_HELP_STRING([--enable-eap-aka],[build AKA authentication module for EAP (default is NO).]),
[if test x$enableval = xyes; then
eap_aka=true
fi]
)
AM_CONDITIONAL(USE_EAP_MD5, test x$eap_md5 = xtrue)
AC_ARG_ENABLE(
[eap-aka],
AS_HELP_STRING([--enable-eap-aka],[build AKA authentication module for EAP (default is NO).]),
[if test x$enableval = xyes; then
eap_aka=true
fi]
[nat-transport],
AS_HELP_STRING([--enable-nat-transport],[enable NAT traversal with IPsec transport mode (default is NO).]),
[if test x$enableval = xyes; then
nat_transport=true
fi]
)
AM_CONDITIONAL(USE_EAP_AKA, test x$eap_aka = xtrue)
AC_ARG_ENABLE(
[nat-transport],
AS_HELP_STRING([--enable-nat-transport],[enable NAT traversal with IPsec transport mode (default is NO).]),
[if test x$enableval = xyes; then
nat_transport=true
fi]
[vendor-id],
AS_HELP_STRING([--disable-vendor-id],[disable the sending of the strongSwan vendor ID (default is NO).]),
[if test x$enableval = xyes; then
vendor_id=true
else
vendor_id=false
fi],
vendor_id=true
)
AM_CONDITIONAL(USE_NAT_TRANSPORT, test x$nat_transport = xtrue)
AC_ARG_ENABLE(
[vendor-id],
AS_HELP_STRING([--disable-vendor-id],[disable the sending of the strongSwan vendor ID (default is NO).]),
[if test x$enableval = xyes; then
vendor_id=true
else
vendor_id=false
fi],
vendor_id=true
[xauth-vid],
AS_HELP_STRING([--disable-xauth-vid],[disable the sending of the XAUTH vendor ID (default is NO).]),
[if test x$enableval = xyes; then
xauth_vid=true
else
xauth_vid=false
fi],
xauth_vid=true
)
AM_CONDITIONAL(USE_VENDORID, test x$vendor_id = xtrue)
AC_ARG_ENABLE(
[xauth-vid],
AS_HELP_STRING([--disable-xauth-vid],[disable the sending of the XAUTH vendor ID (default is NO).]),
[if test x$enableval = xyes; then
xauth_vid=true
else
xauth_vid=false
fi],
xauth_vid=true
[dumm],
AS_HELP_STRING([--enable-dumm],[build the DUMM UML test framework (default is NO).]),
[if test x$enableval = xyes; then
dumm=true
fi]
)
AM_CONDITIONAL(USE_XAUTH_VID, test x$xauth_vid = xtrue)
AC_ARG_ENABLE(
[uml],
AS_HELP_STRING([--enable-uml],[build the UML test framework (default is NO).]),
[if test x$enableval = xyes; then
uml=true
fi]
[fast],
AS_HELP_STRING([--enable-fast],[build libfast (FastCGI Application Server w/ templates (default is NO).]),
[if test x$enableval = xyes; then
fast=true
fi]
)
AM_CONDITIONAL(USE_UML, test x$uml = xtrue)
AC_ARG_ENABLE(
[fast],
AS_HELP_STRING([--enable-fast],[build libfast (FastCGI Application Server w/ templates (default is NO).]),
[if test x$enableval = xyes; then
fast=true
fi]
[manager],
AS_HELP_STRING([--enable-manager],[build web management console (default is NO).]),
[if test x$enableval = xyes; then
manager=true
xml=true
fi]
)
AM_CONDITIONAL(USE_FAST, test x$fast = xtrue)
AC_ARG_ENABLE(
[manager],
AS_HELP_STRING([--enable-manager],[build web management console (default is NO).]),
[if test x$enableval = xyes; then
manager=true
fi]
[mediation],
AS_HELP_STRING([--enable-mediation],[enable IKEv2 Mediation Extension (default is NO).]),
[if test x$enableval = xyes; then
me=true
fi]
)
AM_CONDITIONAL(USE_MANAGER, test x$manager = xtrue)
AC_ARG_ENABLE(
[mediation],
AS_HELP_STRING([--enable-mediation],[enable IKEv2 Mediation Extension (default is NO).]),
[if test x$enableval = xyes; then
me=true
AC_DEFINE(ME)
fi]
[integrity-test],
AS_HELP_STRING([--enable-integrity-test],[enable the integrity test of the crypto library (default is NO).]),
[if test x$enableval = xyes; then
integrity_test=true
fi]
)
AM_CONDITIONAL(USE_ME, test x$me = xtrue)
AC_ARG_ENABLE(
[integrity-test],
AS_HELP_STRING([--enable-integrity-test],[enable the integrity test of the crypto library (default is NO).]),
[if test x$enableval = xyes; then
integrity_test=true
AC_DEFINE(INTEGRITY_TEST)
fi]
[self-test],
AS_HELP_STRING([--disable-self-test],[disable the self-test of the crypto library (default is NO).]),
[if test x$enableval = xyes; then
self_test=true
else
self_test=false
fi],
self_test=true
)
AM_CONDITIONAL(USE_INTEGRITY_TEST, test x$integrity_test = xtrue)
AC_ARG_ENABLE(
[self-test],
AS_HELP_STRING([--disable-self-test],[disable the self-test of the crypto library (default is NO).]),
[if test x$enableval = xyes; then
self_test=true
else
self_test=false
AC_DEFINE(NO_SELF_TEST)
fi],
self_test=true
[pluto],
AS_HELP_STRING([--disable-pluto],[disable the IKEv1 keying daemon pluto. (default is NO).]),
[if test x$enableval = xyes; then
pluto=true
else
pluto=false
fi],
pluto=true
)
AM_CONDITIONAL(USE_SELF_TEST, test x$self_test = xtrue)
AC_ARG_ENABLE(
[pluto],
AS_HELP_STRING([--disable-pluto],[disable the IKEv1 keying daemon pluto. (default is NO).]),
[if test x$enableval = xyes; then
pluto=true
else
pluto=false
fi],
pluto=true
[charon],
AS_HELP_STRING([--disable-charon],[disable the IKEv2 keying daemon charon. (default is NO).]),
[if test x$enableval = xyes; then
charon=true
else
charon=false
fi],
charon=true
)
AM_CONDITIONAL(USE_PLUTO, test x$pluto = xtrue)
AC_ARG_ENABLE(
[charon],
AS_HELP_STRING([--disable-charon],[disable the IKEv2 keying daemon charon. (default is NO).]),
[if test x$enableval = xyes; then
charon=true
else
charon=false
fi],
charon=true
[tools],
AS_HELP_STRING([--disable-tools],[disable additional utilities (openac and scepclient). (default is NO).]),
[if test x$enableval = xyes; then
tools=true
else
tools=false
fi],
tools=true
)
AM_CONDITIONAL(USE_CHARON, test x$charon = xtrue)
AC_ARG_ENABLE(
[tools],
AS_HELP_STRING([--disable-tools],[disable additional utilities (openac and scepclient). (default is NO).]),
[if test x$enableval = xyes; then
tools=true
else
tools=false
fi],
tools=true
)
AM_CONDITIONAL(USE_TOOLS, test x$tools = xtrue)
AM_CONDITIONAL(USE_PLUTO_OR_CHARON, test x$pluto = xtrue -o x$charon = xtrue)
AM_CONDITIONAL(USE_LIBSTRONGSWAN, test x$charon = xtrue -o x$tools = xtrue)
AM_CONDITIONAL(USE_FILE_CONFIG, test x$pluto = xtrue -o x$stroke = xtrue)
dnl =========================
dnl check required programs
@ -536,68 +480,140 @@ AC_PROG_CC()
AC_PATH_PROG([GPERF], [gperf], [], [$PATH:/bin:/usr/bin:/usr/local/bin])
AC_PATH_PROG([PERL], [perl], [], [$PATH:/bin:/usr/bin:/usr/local/bin])
dnl ==========================
dnl check required libraries
dnl ==========================
dnl =========================
dnl dependency calculation
dnl =========================
if test x$pluto = xtrue; then
gmp=true;
fi
if test x$tools = xtrue; then
gmp=true;
fi
if test x$smp = xtrue; then
xml=true
fi
if test x$manager = xtrue; then
fast=true
fi
dnl ==========================================
dnl check required libraries and header files
dnl ==========================================
AC_HAVE_LIBRARY(dl)
AC_CHECK_FUNCS(backtrace)
AC_CHECK_FUNCS(dladdr)
AC_CHECK_FUNCS(getifaddrs)
AC_HAVE_LIBRARY([gmp],[LIBS="$LIBS"],[AC_MSG_ERROR([GNU Multi Precision library gmp not found])])
if test "$ldap" = "true"; then
AC_HAVE_LIBRARY([ldap],[LIBS="$LIBS"],[AC_MSG_ERROR([LDAP enabled, but library ldap not found])])
AC_HAVE_LIBRARY([lber],[LIBS="$LIBS"],[AC_MSG_ERROR([LDAP enabled, but library lber not found])])
fi
if test "$curl" = "true"; then
AC_HAVE_LIBRARY([curl],[LIBS="$LIBS"],[AC_MSG_ERROR([CURL enabled, but library curl not found])])
AC_MSG_CHECKING([capset() definition])
AC_TRY_COMPILE(
[#include <linux/capset.h>],
[
void *test = capset;
],
[AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); AC_DEFINE_UNQUOTED(NO_CAPSET_DEFINED, 1)]
)
if test x$gmp = xtrue; then
AC_HAVE_LIBRARY([gmp],[LIBS="$LIBS"],[AC_MSG_ERROR([GNU Multi Precision library gmp not found])])
AC_MSG_CHECKING([gmp.h version >= 4.1.4])
AC_TRY_COMPILE(
[#include "gmp.h"],
[
#if (__GNU_MP_VERSION*100 + __GNU_MP_VERSION_MINOR*10 + __GNU_MP_VERSION_PATCHLEVEL) < 414
#error bad gmp
#endif
],
[AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); AC_MSG_ERROR([No usable gmp.h found!])]
)
fi
if test "$xml" = "true"; then
if test x$ldap = xtrue; then
AC_HAVE_LIBRARY([ldap],[LIBS="$LIBS"],[AC_MSG_ERROR([LDAP library ldap not found])])
AC_HAVE_LIBRARY([lber],[LIBS="$LIBS"],[AC_MSG_ERROR([LDAP library lber not found])])
AC_CHECK_HEADER([ldap.h],,[AC_MSG_ERROR([LDAP header ldap.h not found!])])
fi
if test x$curl = xtrue; then
AC_HAVE_LIBRARY([curl],[LIBS="$LIBS"],[AC_MSG_ERROR([CURL library curl not found])])
AC_CHECK_HEADER([curl/curl.h],,[AC_MSG_ERROR([CURL header curl/curl.h not found!])])
fi
if test x$xml = xtrue; then
PKG_CHECK_MODULES(xml, [libxml-2.0],, AC_MSG_ERROR([No libxml2 package information found]))
AC_SUBST(xml_CFLAGS)
AC_SUBST(xml_LIBS)
fi
if test "$dbus" = "true"; then
PKG_CHECK_MODULES(dbus, [dbus-1],, AC_MSG_ERROR([No libdbus package information found]))
AC_SUBST(dbus_CFLAGS)
AC_SUBST(dbus_LIBS)
if test x$fast = xtrue; then
AC_HAVE_LIBRARY([neo_cgi],[LIBS="$LIBS"],[AC_MSG_ERROR([ClearSilver library neo_cgi not found!])])
AC_HAVE_LIBRARY([neo_utl],[LIBS="$LIBS"],[AC_MSG_ERROR([ClearSilver library neo_utl not found!])])
AC_HAVE_LIBRARY([z],[LIBS="$LIBS"],[AC_MSG_ERROR([ClearSilver dependency zlib not found!])])
dnl autoconf does not like CamelCase!? How to fix this?
dnl AC_CHECK_HEADER([ClearSilver/ClearSilver.h],,[AC_MSG_ERROR([ClearSilver header file ClearSilver/ClearSilver.h not found!])])
AC_HAVE_LIBRARY([fcgi],[LIBS="$LIBS"],[AC_MSG_ERROR([FastCGI library fcgi not found!])])
AC_CHECK_HEADER([fcgiapp.h],,[AC_MSG_ERROR([FastCGI header file fcgiapp.h not found!])])
fi
dnl =============================
dnl check required header files
dnl =============================
AC_MSG_CHECKING([gmp.h version >= 4.1.4])
AC_TRY_COMPILE(
[#include "gmp.h"],
[
#if (__GNU_MP_VERSION*100 + __GNU_MP_VERSION_MINOR*10 + __GNU_MP_VERSION_PATCHLEVEL) < 414
#error bad gmp
#endif
],
[AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); AC_MSG_ERROR([No usable gmp.h found!])]
)
AC_MSG_CHECKING([capset() definition])
AC_TRY_COMPILE(
[#include <linux/capset.h>],
[
void *test = capset;
],
[AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); AC_DEFINE_UNQUOTED(NO_CAPSET_DEFINED, 1)]
)
if test "$ldap" = "true"; then
AC_CHECK_HEADER([ldap.h],,[AC_MSG_ERROR([LDAP enabled, but ldap.h not found!])])
if test x$mysql = xtrue; then
AC_HAVE_LIBRARY([mysqlclient_r],[LIBS="$LIBS"],[AC_MSG_ERROR([MySQL library mysqlclient_r not found])])
AC_CHECK_HEADER([mysql/mysql.h],,[AC_MSG_ERROR([MySQL header mysql/mysql.h not found!])])
fi
if test "$curl" = "true"; then
AC_CHECK_HEADER([curl/curl.h],,[AC_MSG_ERROR([CURL enabled, but curl.h not found!])])
if test x$mysql = xtrue; then
AC_HAVE_LIBRARY([sqlite3],[LIBS="$LIBS"],[AC_MSG_ERROR([SQLite library sqlite3 not found])])
AC_CHECK_HEADER([sqlite3.h],,[AC_MSG_ERROR([SQLite header sqlite3.h not found!])])
fi
dnl =========================
dnl set Makefile.am vars
dnl =========================
AM_CONDITIONAL(USE_CURL, test x$curl = xtrue)
AM_CONDITIONAL(USE_LDAP, test x$ldap = xtrue)
AM_CONDITIONAL(USE_AES, test x$aes = xtrue)
AM_CONDITIONAL(USE_DES, test x$des = xtrue)
AM_CONDITIONAL(USE_MD5, test x$md5 = xtrue)
AM_CONDITIONAL(USE_SHA1, test x$sha1 = xtrue)
AM_CONDITIONAL(USE_SHA2, test x$sha2 = xtrue)
AM_CONDITIONAL(USE_FIPS_PRF, test x$fips_prf = xtrue)
AM_CONDITIONAL(USE_GMP, test x$gmp = xtrue)
AM_CONDITIONAL(USE_X509, test x$x509 = xtrue)
AM_CONDITIONAL(USE_HMAC, test x$hmac = xtrue)
AM_CONDITIONAL(USE_MYSQL, test x$mysql = xtrue)
AM_CONDITIONAL(USE_SQLITE, test x$sqlite = xtrue)
AM_CONDITIONAL(USE_STROKE, test x$stroke = xtrue)
AM_CONDITIONAL(USE_MED_DB, test x$med_db = xtrue)
AM_CONDITIONAL(USE_SMP, test x$smp = xtrue)
AM_CONDITIONAL(USE_SQL, test x$sql = xtrue)
AM_CONDITIONAL(USE_SMARTCARD, test x$smartcard = xtrue)
AM_CONDITIONAL(USE_CISCO_QUIRKS, test x$cisco_quirks = xtrue)
AM_CONDITIONAL(USE_LEAK_DETECTIVE, test x$leak_detective = xtrue)
AM_CONDITIONAL(USE_UNIT_TESTS, test x$unittest = xtrue)
AM_CONDITIONAL(USE_EAP_SIM, test x$eap_sim = xtrue)
AM_CONDITIONAL(USE_EAP_IDENTITY, test x$eap_identity = xtrue)
AM_CONDITIONAL(USE_EAP_MD5, test x$eap_md5 = xtrue)
AM_CONDITIONAL(USE_EAP_AKA, test x$eap_aka = xtrue)
AM_CONDITIONAL(USE_NAT_TRANSPORT, test x$nat_transport = xtrue)
AM_CONDITIONAL(USE_VENDORID, test x$vendor_id = xtrue)
AM_CONDITIONAL(USE_XAUTH_VID, test x$xauth_vid = xtrue)
AM_CONDITIONAL(USE_DUMM, test x$dumm = xtrue)
AM_CONDITIONAL(USE_FAST, test x$fast = xtrue)
AM_CONDITIONAL(USE_MANAGER, test x$manager = xtrue)
AM_CONDITIONAL(USE_ME, test x$me = xtrue)
AM_CONDITIONAL(USE_INTEGRITY_TEST, test x$integrity_test = xtrue)
AM_CONDITIONAL(USE_SELF_TEST, test x$self_test = xtrue)
AM_CONDITIONAL(USE_PLUTO, test x$pluto = xtrue)
AM_CONDITIONAL(USE_CHARON, test x$charon = xtrue)
AM_CONDITIONAL(USE_TOOLS, test x$tools = xtrue)
AM_CONDITIONAL(USE_PLUTO_OR_CHARON, test x$pluto = xtrue -o x$charon = xtrue)
AM_CONDITIONAL(USE_LIBSTRONGSWAN, test x$charon = xtrue -o x$tools = xtrue)
AM_CONDITIONAL(USE_FILE_CONFIG, test x$pluto = xtrue -o x$stroke = xtrue)
dnl ==============================
dnl build Makefiles
dnl ==============================
@ -630,7 +646,7 @@ AC_OUTPUT(
src/charon/plugins/eap_md5/Makefile
src/charon/plugins/eap_sim/Makefile
src/charon/plugins/dbus/Makefile
src/charon/plugins/xml/Makefile
src/charon/plugins/smp/Makefile
src/charon/plugins/sql/Makefile
src/charon/plugins/med_db/Makefile
src/charon/plugins/stroke/Makefile

View File

@ -27,7 +27,7 @@ if USE_TOOLS
SUBDIRS += openac scepclient
endif
if USE_UML
if USE_DUMM
SUBDIRS += dumm
endif

View File

@ -91,6 +91,14 @@ credentials/sets/ocsp_response_wrapper.c credentials/sets/ocsp_response_wrapper.
credentials/sets/cert_cache.c credentials/sets/cert_cache.h \
credentials/credential_set.h
INCLUDES = -I${linuxdir} -I$(top_srcdir)/src/libstrongswan -I$(top_srcdir)/src/charon
AM_CFLAGS = -rdynamic -DIPSEC_DIR=\"${ipsecdir}\" \
-DIPSEC_PIDDIR=\"${piddir}\" -DIPSEC_PLUGINDIR=\"${plugindir}\"
charon_LDADD = $(top_builddir)/src/libstrongswan/libstrongswan.la -lpthread -lm -ldl
# compile options
#################
# Use RAW socket if pluto gets built
if USE_PLUTO
charon_SOURCES += network/socket-raw.c
@ -99,6 +107,7 @@ else
endif
if USE_ME
AM_CFLAGS += -DME
charon_SOURCES += encoding/payloads/endpoint_notify.c encoding/payloads/endpoint_notify.h \
processing/jobs/initiate_mediation_job.c processing/jobs/initiate_mediation_job.h \
processing/jobs/mediation_job.c processing/jobs/mediation_job.h \
@ -107,10 +116,13 @@ if USE_ME
sa/tasks/ike_me.c sa/tasks/ike_me.h
endif
INCLUDES = -I${linuxdir} -I$(top_srcdir)/src/libstrongswan -I$(top_srcdir)/src/charon
AM_CFLAGS = -rdynamic -DIPSEC_DIR=\"${ipsecdir}\" \
-DIPSEC_PIDDIR=\"${piddir}\" -DIPSEC_PLUGINDIR=\"${plugindir}\"
charon_LDADD = $(top_builddir)/src/libstrongswan/libstrongswan.la -lpthread -lm -ldl
if USE_INTEGRITY_TEST
AM_CFLAGS += -DINTEGRITY_TEST
endif
if USE_SELF_TEST
AM_CFLAGS += -DSELF_TEST
endif
# build optional plugins
########################
@ -125,12 +137,8 @@ if USE_STROKE
SUBDIRS += plugins/stroke
endif
if USE_LIBDBUS
SUBDIRS += plugins/dbus
endif
if USE_LIBXML
SUBDIRS += plugins/xml
if USE_SMP
SUBDIRS += plugins/smp
endif
if USE_SQL

View File

@ -0,0 +1,10 @@
INCLUDES = -I$(top_srcdir)/src/libstrongswan -I$(top_srcdir)/src/charon ${xml_CFLAGS}
AM_CFLAGS = -rdynamic -DIPSEC_PIDDIR=\"${piddir}\"
plugin_LTLIBRARIES = libcharon-smp.la
libcharon_smp_la_SOURCES = smp.h smp.c
libcharon_smp_la_LDFLAGS = -module
libcharon_smp_la_LIBADD = ${xml_LIBS}

View File

@ -17,7 +17,7 @@
#include <stdlib.h>
#include "xml.h"
#include "smp.h"
#include <sys/types.h>
#include <sys/stat.h>
@ -35,17 +35,17 @@
#include <processing/jobs/callback_job.h>
typedef struct private_xml_t private_xml_t;
typedef struct private_smp_t private_smp_t;
/**
* Private data of an xml_t object.
* Private data of an smp_t object.
*/
struct private_xml_t {
struct private_smp_t {
/**
* Public part of xml_t object.
* Public part of smp_t object.
*/
xml_t public;
smp_t public;
/**
* XML unix socket fd
@ -662,7 +662,7 @@ static job_requeue_t process(int *fdp)
/**
* accept from XML socket and create jobs to process connections
*/
static job_requeue_t dispatch(private_xml_t *this)
static job_requeue_t dispatch(private_smp_t *this)
{
struct sockaddr_un strokeaddr;
int oldstate, fd, *fdp, strokeaddrlen = sizeof(strokeaddr);
@ -691,7 +691,7 @@ static job_requeue_t dispatch(private_xml_t *this)
/**
* Implementation of itnerface_t.destroy.
*/
static void destroy(private_xml_t *this)
static void destroy(private_smp_t *this)
{
this->job->cancel(this->job);
close(this->socket);
@ -704,7 +704,7 @@ static void destroy(private_xml_t *this)
plugin_t *plugin_create()
{
struct sockaddr_un unix_addr = { AF_UNIX, IPSEC_PIDDIR "/charon.xml"};
private_xml_t *this = malloc_thing(private_xml_t);
private_smp_t *this = malloc_thing(private_smp_t);
mode_t old;
this->public.plugin.destroy = (void (*)(plugin_t*))destroy;

View File

@ -16,27 +16,27 @@
*/
/**
* @defgroup xml xml
* @defgroup smp smp
* @ingroup cplugins
*
* @defgroup xml_i xml
* @{ @ingroup xml
* @defgroup smp_i smp
* @{ @ingroup smp
*/
#ifndef XML_H_
#define XML_H_
#ifndef SMP_H_
#define SMP_H_
#include <plugins/plugin.h>
typedef struct xml_t xml_t;
typedef struct smp_t smp_t;
/**
* XML configuration and control interface.
* SMP configuration and control interface.
*
* The XML interface uses a socket and a to communicate. The syntax is strict
* The SMP interface uses a socket and a to communicate. The syntax is strict
* XML, defined in the schema.xml specification.
*/
struct xml_t {
struct smp_t {
/**
* implements the plugin interface.
@ -45,7 +45,7 @@ struct xml_t {
};
/**
* Create a xml plugin instance.
* Create a smp plugin instance.
*/
plugin_t *plugin_create();

View File

@ -78,7 +78,7 @@ static traffic_selector_t *build_traffic_selector(private_sql_config_t *this,
*local = TRUE;
/* FALL */
case TS_REMOTE_DYNAMIC:
ts = traffic_selector_create_dynamic(protocol, type,
ts = traffic_selector_create_dynamic(protocol,
start_port, end_port);
break;
default:

View File

@ -1,10 +0,0 @@
INCLUDES = -I$(top_srcdir)/src/libstrongswan -I$(top_srcdir)/src/charon ${xml_CFLAGS}
AM_CFLAGS = -rdynamic -DIPSEC_PIDDIR=\"${piddir}\"
plugin_LTLIBRARIES = libcharon-xml.la
libcharon_xml_la_SOURCES = xml.h xml.c
libcharon_xml_la_LDFLAGS = -module
libcharon_xml_la_LIBADD = ${xml_LIBS}

View File

@ -134,3 +134,8 @@ if USE_LDAP
AM_CFLAGS += -DLIBLDAP
endif
# This compile option activates smartcard support
if USE_SMARTCARD
AM_CFLAGS += -DSMARTCARD
endif

View File

@ -25,9 +25,16 @@ scepclient_LDADD = asn1.o ca.o crl.o certs.o constants.o defs.o fetch.o id.o \
# This compile option activates smartcard support
if USE_SMARTCARD
AM_CFLAGS += -DSMARTCARD
scepclient_LDADD += -ldl
endif
# This compile option activates dynamic URL fetching using libcurl
if USE_CURL
AM_CFLAGS += -DLIBCURL
scepclient_LDADD += -lcurl
endif
dist_man_MANS = scepclient.8
asn1.o : $(PLUTODIR)/asn1.c $(PLUTODIR)/asn1.h