Commit 8eeb4754 authored by Linus Nordberg's avatar Linus Nordberg

Add --enable-fticks to configure.

parent 1a80ea43
......@@ -22,8 +22,11 @@ librsp_a_SOURCES = \
udp.c \
tcp.c \
tls.c \
dtls.c \
fticks.c
dtls.c
if WANT_FTICKS
librsp_a_SOURCES += fticks.c
endif
catgconf_SOURCES = \
debug.c \
......
......@@ -48,9 +48,25 @@ AC_ARG_ENABLE(dtls,
fi
])
AC_ARG_ENABLE(fticks,
AC_HELP_STRING([--enable-fticks],[build with F-Ticks support [default=no]]),
[case $enableval in
yes|no) ;;
*) AC_MSG_ERROR([bad value $enableval for --enable-fticks, need yes or no]) ;;
esac],
[enable_fticks=no])
if test "$enable_fticks" = "yes"; then
AC_CHECK_LIB([nettle], [nettle_sha256_init],,
AC_MSG_ERROR([required library nettle not found]))
[AC_MSG_WARN([required library nettle not found, fticks support disabled])
enable_fticks=no])
fi
if test "$enable_fticks" = "yes"; then
AC_DEFINE([WANT_FTICKS], [1])
fi
AM_CONDITIONAL(WANT_FTICKS, test "$enable_fticks" = "yes")
dnl Check if we're on Solaris and set CFLAGS accordingly
AC_CANONICAL_SYSTEM
case "${target_os}" in
......
......@@ -77,7 +77,9 @@
#include "tcp.h"
#include "tls.h"
#include "dtls.h"
#if defined(WANT_FTICKS)
#include "fticks.h"
#endif
static struct options options;
static struct list *clconfs, *srvconfs;
......@@ -1665,9 +1667,11 @@ void replyh(struct server *server, unsigned char *buf) {
}
}
#if defined(WANT_FTICKS)
if (msg->code == RAD_Access_Accept || msg->code == RAD_Access_Reject)
if (options.fticks_reporting && from->conf->fticks_viscountry != NULL)
fticks_log(&options, from, msg, rqout);
#endif
msg->id = (char)rqout->rq->rqid;
memcpy(msg->auth, rqout->rq->rqauth, 16);
......@@ -2678,7 +2682,9 @@ int confclient_cb(struct gconffile **cf, void *arg, char *block, char *opt, char
"rewriteIn", CONF_STR, &conf->confrewritein,
"rewriteOut", CONF_STR, &conf->confrewriteout,
"rewriteattribute", CONF_STR, &conf->confrewriteusername,
#if defined(WANT_FTICKS)
"fticksVISCOUNTRY", CONF_STR, &conf->fticks_viscountry,
#endif
NULL
))
debugx(1, DBG_ERR, "configuration error");
......@@ -3011,9 +3017,11 @@ void getmainconfig(const char *configfile) {
struct gconffile *cfs;
char **listenargs[RAD_PROTOCOUNT];
char *sourcearg[RAD_PROTOCOUNT];
#if defined(WANT_FTICKS)
uint8_t *fticks_reporting_str = NULL;
uint8_t *fticks_mac_str = NULL;
uint8_t *fticks_key_str = NULL;
#endif
int i;
cfs = openconfigfile(configfile);
......@@ -3067,9 +3075,11 @@ void getmainconfig(const char *configfile) {
"TLS", CONF_CBK, conftls_cb, NULL,
#endif
"Rewrite", CONF_CBK, confrewrite_cb, NULL,
#if defined(WANT_FTICKS)
"FTicksReporting", CONF_STR, &fticks_reporting_str,
"FTicksMAC", CONF_STR, &fticks_mac_str,
"FTicksKey", CONF_STR, &fticks_key_str,
#endif
NULL
))
debugx(1, DBG_ERR, "configuration error");
......@@ -3087,8 +3097,10 @@ void getmainconfig(const char *configfile) {
if (!setttlattr(&options, DEFAULT_TTL_ATTR))
debugx(1, DBG_ERR, "Failed to set TTLAttribute, exiting");
#if defined(WANT_FTICKS)
fticks_configure(&options, &fticks_reporting_str, &fticks_mac_str,
&fticks_key_str);
#endif
for (i = 0; i < RAD_PROTOCOUNT; i++)
if (listenargs[i] || sourcearg[i])
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment