kernel-libipsec: Create a TUN device and use it to install virtual IPs

This commit is contained in:
Tobias Brunner
2013-06-21 17:03:20 +02:00
parent 279e0d42bd
commit 59be6ddd08
2 changed files with 40 additions and 0 deletions
@@ -17,6 +17,7 @@
#include <library.h>
#include <ipsec.h>
#include <hydra.h>
#include <networking/tun_device.h>
#include <utils/debug.h>
typedef struct private_kernel_libipsec_ipsec_t private_kernel_libipsec_ipsec_t;
@@ -32,6 +33,11 @@ struct private_kernel_libipsec_ipsec_t {
* Listener for lifetime expire events
*/
ipsec_event_listener_t ipsec_listener;
/**
* TUN device
*/
tun_device_t *tun;
};
/**
@@ -181,6 +187,7 @@ kernel_libipsec_ipsec_t *kernel_libipsec_ipsec_create()
.ipsec_listener = {
.expire = expire,
},
.tun = lib->get(lib, "kernel-libipsec-tun"),
);
ipsec->events->register_listener(ipsec->events, &this->ipsec_listener);