aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/wireguard/wireguard.c
diff options
context:
space:
mode:
authorArtem Glazychev <artem.glazychev@xored.com>2020-09-14 11:36:01 +0700
committerDave Wallace <dwallacelf@gmail.com>2020-09-24 18:54:26 +0000
commit48d81b58dfc1b4c93a44e07ed61cbe73458623a2 (patch)
tree95a940c749902a0eb91a371bb81e6fddbbe0cba2 /src/plugins/wireguard/wireguard.c
parentc359dfa1869d888d934fd0fd362ece21f9ffc26c (diff)
wireguard: add handoff node
All timer and control plane functions happen from main thread Type: fix Change-Id: I4fc333c644485cd17e6f426493feef91688d9b24 Signed-off-by: Artem Glazychev <artem.glazychev@xored.com> (cherry picked from commit 8eb69407c8075e101b773d5a27ea21bd3fc906d7)
Diffstat (limited to 'src/plugins/wireguard/wireguard.c')
-rwxr-xr-xsrc/plugins/wireguard/wireguard.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/plugins/wireguard/wireguard.c b/src/plugins/wireguard/wireguard.c
index 00921811e4a..9510a0ad385 100755
--- a/src/plugins/wireguard/wireguard.c
+++ b/src/plugins/wireguard/wireguard.c
@@ -32,7 +32,17 @@ wg_init (vlib_main_t * vm)
wg_main_t *wmp = &wg_main;
wmp->vlib_main = vm;
- wmp->peers = 0;
+
+ wmp->in_fq_index = vlib_frame_queue_main_init (wg_input_node.index, 0);
+ wmp->out_fq_index =
+ vlib_frame_queue_main_init (wg_output_tun_node.index, 0);
+
+ vlib_thread_main_t *tm = vlib_get_thread_main ();
+
+ vec_validate_aligned (wmp->per_thread_data, tm->n_vlib_mains,
+ CLIB_CACHE_LINE_BYTES);
+
+ wg_timer_wheel_init ();
return (NULL);
}