From 7f5ac773191f496c972920ca164246ccb287d91c Mon Sep 17 00:00:00 2001 From: Mark Stapp Date: Tue, 21 Apr 2020 08:40:54 -0400 Subject: [PATCH] sharpd: add handler for OPAQUE messages Add a simple handler to receive OPAQUE zapi messages for testing. Signed-off-by: Mark Stapp --- sharpd/sharp_zebra.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/sharpd/sharp_zebra.c b/sharpd/sharp_zebra.c index 0bf5c037ca..34cc1a4b5a 100644 --- a/sharpd/sharp_zebra.c +++ b/sharpd/sharp_zebra.c @@ -480,12 +480,29 @@ static int sharp_redistribute_route(ZAPI_CALLBACK_ARGS) return 0; } +/* Handler for opaque messages */ +static int sharp_opaque_handler(ZAPI_CALLBACK_ARGS) +{ + uint32_t type; + struct stream *s; + + s = zclient->ibuf; + + STREAM_GETL(s, type); + + zlog_debug("%s: received opaque type %u", __func__, type); + +stream_failure: + + return 0; +} + /* * Send OPAQUE messages, using subtype 'type'. */ void sharp_opaque_send(uint32_t type, uint32_t count) { - uint8_t buf[100]; + uint8_t buf[32]; int ret; uint32_t i; @@ -561,4 +578,5 @@ void sharp_zebra_init(void) zclient->redistribute_route_add = sharp_redistribute_route; zclient->redistribute_route_del = sharp_redistribute_route; + zclient->opaque_msg_handler = sharp_opaque_handler; } -- 2.39.5