diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2020-02-17 19:24:16 -0500 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2020-02-18 09:33:16 -0500 |
| commit | 08fa52a82648fe0fd00492ea68055ceab07319e8 (patch) | |
| tree | 9c301e910fbc7070a0a2cb3253a03912f810bb0e /zebra/irdp_packet.c | |
| parent | dea8e5f275c45359959b52d71c1764dfbf85bdf1 (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.c | 7 |
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)); } |
