From: David Lamparter Date: Tue, 3 Mar 2015 20:03:52 +0000 (+0100) Subject: pimd: cast to sockaddr_in to sockaddr X-Git-Tag: frr-2.0-rc1~869 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=59e96cda41eaa263fe445566a484bc979c36be18;p=mirror%2Ffrr.git pimd: cast to sockaddr_in to sockaddr While glibc seems to have something in the system headers that prevents this from triggering a warning, FreeBSD doesn't. Fix the warning. Signed-off-by: David Lamparter --- diff --git a/pimd/pim_igmpv3.c b/pimd/pim_igmpv3.c index 3baddbfae1..3657f2f946 100644 --- a/pimd/pim_igmpv3.c +++ b/pimd/pim_igmpv3.c @@ -1680,7 +1680,8 @@ void pim_igmp_send_membership_query(struct igmp_group *group, #endif tolen = sizeof(to); - sent = sendto(fd, query_buf, msg_size, MSG_DONTWAIT, &to, tolen); + sent = sendto(fd, query_buf, msg_size, MSG_DONTWAIT, + (struct sockaddr *)&to, tolen); if (sent != (ssize_t) msg_size) { int e = errno; char dst_str[100]; diff --git a/pimd/pim_pim.c b/pimd/pim_pim.c index f6f4c95350..f8ac650d24 100644 --- a/pimd/pim_pim.c +++ b/pimd/pim_pim.c @@ -476,7 +476,8 @@ int pim_msg_send(int fd, pim_pkt_dump(__PRETTY_FUNCTION__, pim_msg, pim_msg_size); } - sent = sendto(fd, pim_msg, pim_msg_size, MSG_DONTWAIT, &to, tolen); + sent = sendto(fd, pim_msg, pim_msg_size, MSG_DONTWAIT, + (struct sockaddr *)&to, tolen); if (sent != (ssize_t) pim_msg_size) { int e = errno; char dst_str[100]; diff --git a/pimd/pim_ssmpingd.c b/pimd/pim_ssmpingd.c index fd1eac06e6..82e0722a74 100644 --- a/pimd/pim_ssmpingd.c +++ b/pimd/pim_ssmpingd.c @@ -96,7 +96,7 @@ static int ssmpingd_socket(struct in_addr addr, int port, int mttl) sockaddr.sin_addr = addr; sockaddr.sin_port = htons(port); - if (bind(fd, &sockaddr, sizeof(sockaddr))) { + if (bind(fd, (struct sockaddr *)&sockaddr, sizeof(sockaddr))) { char addr_str[100]; pim_inet4_dump("", addr, addr_str, sizeof(addr_str)); zlog_warn("%s: bind(fd=%d,addr=%s,port=%d,len=%zu) failure: errno=%d: %s", @@ -222,7 +222,8 @@ static void ssmpingd_sendto(struct ssmpingd_sock *ss, socklen_t tolen = sizeof(to); int sent; - sent = sendto(ss->sock_fd, buf, len, MSG_DONTWAIT, &to, tolen); + sent = sendto(ss->sock_fd, buf, len, MSG_DONTWAIT, + (struct sockaddr *)&to, tolen); if (sent != len) { int e = errno; char to_str[100];