diff options
author | Reto Buerki <reet@codelabs.ch> | 2012-08-31 11:13:39 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2013-03-19 15:23:47 +0100 |
commit | d0ce4116b0380dbfa3890781c6cf2e40f9ac4654 (patch) | |
tree | 5f70115eef3e42cdca3b2df363ab3582879942c7 /src | |
parent | c6c8d74026f149d456ab900445f6efbcd7d9d4bb (diff) | |
download | strongswan-d0ce4116b0380dbfa3890781c6cf2e40f9ac4654.tar.bz2 strongswan-d0ce4116b0380dbfa3890781c6cf2e40f9ac4654.tar.xz |
Register TKM bus listener in charon-tkm
Diffstat (limited to 'src')
-rw-r--r-- | src/charon-tkm/src/charon-tkm.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/charon-tkm/src/charon-tkm.c b/src/charon-tkm/src/charon-tkm.c index e102b4e0d..f2a58b21e 100644 --- a/src/charon-tkm/src/charon-tkm.c +++ b/src/charon-tkm/src/charon-tkm.c @@ -37,6 +37,12 @@ #include "tkm_nonceg.h" #include "tkm_diffie_hellman.h" #include "tkm_keymat.h" +#include "tkm_listener.h" + +/** + * TKM bus listener for IKE authorize events. + */ +static tkm_listener_t *listener; /** * PID file, in which charon-tkm stores its process id @@ -319,6 +325,10 @@ int main(int argc, char *argv[]) goto deinit; } + /* register TKM authorization hook */ + listener = tkm_listener_create(); + charon->bus->add_listener(charon->bus, &listener->listener); + /* add handler for SEGV and ILL, * INT and TERM are handled by sigwait() in run() */ action.sa_handler = segv_handler; @@ -342,6 +352,8 @@ int main(int argc, char *argv[]) unlink_pidfile(); status = 0; + charon->bus->remove_listener(charon->bus, &listener->listener); + listener->destroy(listener); deinit: libcharon_deinit(); |