summaryrefslogtreecommitdiff
path: root/zebra/irdp_packet.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2020-02-17 19:24:16 -0500
committerDonald Sharp <sharpd@cumulusnetworks.com>2020-02-18 09:33:16 -0500
commit08fa52a82648fe0fd00492ea68055ceab07319e8 (patch)
tree9c301e910fbc7070a0a2cb3253a03912f810bb0e /zebra/irdp_packet.c
parentdea8e5f275c45359959b52d71c1764dfbf85bdf1 (diff)
zebra: SO_BROADCAST needs a uint32_t instead of a uint8_t
Using SO_BROADCAST, in the linux kernel, requires a uint32_t to be passed in for all SOL_SOCKET calls. Modify code to use it. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'zebra/irdp_packet.c')
-rw-r--r--zebra/irdp_packet.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/zebra/irdp_packet.c b/zebra/irdp_packet.c
index f6fe6bbf1e..ae11bc5a64 100644
--- a/zebra/irdp_packet.c
+++ b/zebra/irdp_packet.c
@@ -319,9 +319,10 @@ void send_packet(struct interface *ifp, struct stream *s, uint32_t dst,
if (dst == INADDR_BROADCAST) {
- on = 1;
- if (setsockopt(irdp_sock, SOL_SOCKET, SO_BROADCAST, (char *)&on,
- sizeof(on))
+ uint32_t bon = 1;
+
+ if (setsockopt(irdp_sock, SOL_SOCKET, SO_BROADCAST, &bon,
+ sizeof(bon))
< 0)
zlog_debug("sendto %s", safe_strerror(errno));
}