diff options
Diffstat (limited to 'src/charon/daemon.c')
-rw-r--r-- | src/charon/daemon.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/charon/daemon.c b/src/charon/daemon.c index b3adf3e89..6d915873b 100644 --- a/src/charon/daemon.c +++ b/src/charon/daemon.c @@ -39,6 +39,7 @@ #include "daemon.h" #include <library.h> +#include <crypto/ca.h> #include <utils/fetcher.h> #include <config/credentials/local_credential_store.h> #include <config/connections/local_connection_store.h> @@ -379,6 +380,8 @@ static void usage(const char *msg) " [--help]\n" " [--version]\n" " [--strictcrlpolicy]\n" + " [--crlcheckinterval <interval>]\n" + " [--eapdir <dir>]\n" " [--use-syslog]\n" " [--debug-<type> <level>]\n" " <type>: log context type (dmn|mgr|ike|chd|job|cfg|knl|net|enc|lib)\n" @@ -394,6 +397,7 @@ static void usage(const char *msg) */ int main(int argc, char *argv[]) { + u_int crl_check_interval = 0; bool strict_crl_policy = FALSE; bool use_syslog = FALSE; char *eapdir = IPSEC_EAPDIR; @@ -420,6 +424,7 @@ int main(int argc, char *argv[]) { "version", no_argument, NULL, 'v' }, { "use-syslog", no_argument, NULL, 'l' }, { "strictcrlpolicy", no_argument, NULL, 'r' }, + { "crlcheckinterval", required_argument, NULL, 'x' }, { "eapdir", required_argument, NULL, 'e' }, /* TODO: handle "debug-all" */ { "debug-dmn", required_argument, &signal, DBG_DMN }, @@ -452,6 +457,9 @@ int main(int argc, char *argv[]) case 'r': strict_crl_policy = TRUE; continue; + case 'x': + crl_check_interval = atoi(optarg); + continue; case 'e': eapdir = optarg; continue; @@ -471,9 +479,13 @@ int main(int argc, char *argv[]) /* initialize daemon */ initialize(private_charon, strict_crl_policy, use_syslog, levels); + /* load pluggable EAP modules */ eap_method_load(eapdir); + /* set crl_check_interval */ + ca_info_set_crlcheckinterval(crl_check_interval); + /* check/setup PID file */ if (stat(PID_FILE, &stb) == 0) { |