hc
2023-12-06 08f87f769b595151be1afeff53e144f543faa614
kernel/drivers/net/wireguard/main.c
....@@ -21,12 +21,21 @@
2121 {
2222 int ret;
2323
24
+ ret = wg_allowedips_slab_init();
25
+ if (ret < 0)
26
+ goto err_allowedips;
27
+
2428 #ifdef DEBUG
29
+ ret = -ENOTRECOVERABLE;
2530 if (!wg_allowedips_selftest() || !wg_packet_counter_selftest() ||
2631 !wg_ratelimiter_selftest())
27
- return -ENOTRECOVERABLE;
32
+ goto err_peer;
2833 #endif
2934 wg_noise_init();
35
+
36
+ ret = wg_peer_init();
37
+ if (ret < 0)
38
+ goto err_peer;
3039
3140 ret = wg_device_init();
3241 if (ret < 0)
....@@ -44,6 +53,10 @@
4453 err_netlink:
4554 wg_device_uninit();
4655 err_device:
56
+ wg_peer_uninit();
57
+err_peer:
58
+ wg_allowedips_slab_uninit();
59
+err_allowedips:
4760 return ret;
4861 }
4962
....@@ -51,6 +64,8 @@
5164 {
5265 wg_genetlink_uninit();
5366 wg_device_uninit();
67
+ wg_peer_uninit();
68
+ wg_allowedips_slab_uninit();
5469 }
5570
5671 module_init(mod_init);