summaryrefslogtreecommitdiff
path: root/zebra/zebra_pw.c
diff options
context:
space:
mode:
Diffstat (limited to 'zebra/zebra_pw.c')
-rw-r--r--zebra/zebra_pw.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/zebra/zebra_pw.c b/zebra/zebra_pw.c
index 68ad69397f..28e09fe193 100644
--- a/zebra/zebra_pw.c
+++ b/zebra/zebra_pw.c
@@ -28,6 +28,7 @@
#include "zebra/debug.h"
#include "zebra/rib.h"
#include "zebra/zserv.h"
+#include "zebra/zapi_msg.h"
#include "zebra/zebra_rnh.h"
#include "zebra/zebra_vrf.h"
#include "zebra/zebra_pw.h"
@@ -268,7 +269,7 @@ static int zebra_pw_check_reachability(struct zebra_pw *pw)
return 0;
}
-void zebra_pw_client_close(struct zserv *client)
+static int zebra_pw_client_close(struct zserv *client)
{
struct vrf *vrf;
struct zebra_vrf *zvrf;
@@ -282,12 +283,16 @@ void zebra_pw_client_close(struct zserv *client)
zebra_pw_del(zvrf, pw);
}
}
+
+ return 0;
}
void zebra_pw_init(struct zebra_vrf *zvrf)
{
RB_INIT(zebra_pw_head, &zvrf->pseudowires);
RB_INIT(zebra_static_pw_head, &zvrf->static_pseudowires);
+
+ hook_register(zapi_client_close, zebra_pw_client_close);
}
void zebra_pw_exit(struct zebra_vrf *zvrf)