]> git.puffer.fish Git - mirror/frr.git/commitdiff
pimd: cast to sockaddr_in to sockaddr
authorDavid Lamparter <equinox@opensourcerouting.org>
Tue, 3 Mar 2015 20:03:52 +0000 (21:03 +0100)
committerDonald Sharp <sharpd@cumulusnetwroks.com>
Thu, 26 May 2016 00:38:32 +0000 (20:38 -0400)
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 <equinox@opensourcerouting.org>
pimd/pim_igmpv3.c
pimd/pim_pim.c
pimd/pim_ssmpingd.c

index 3baddbfae1d95a1c988a1ab158de89017edb6016..3657f2f946ce6aef0b49a706416b114d58ee622b 100644 (file)
@@ -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];
index f6f4c95350ae8957c1b5cfdd3eee0371202099ad..f8ac650d24a792fdb9b3b211bec23344eacdccdc 100644 (file)
@@ -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];
index fd1eac06e66e666c6f359e066ea2c617c8459369..82e0722a7410fa0ce1d1df08af8950c10de40a53 100644 (file)
@@ -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, 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];