Set the oft-forgotten sin_len.
authorDavid Barksdale <amatus.amongus@gmail.com>
Sun, 2 May 2010 23:22:21 +0000 (23:22 +0000)
committerDavid Barksdale <amatus.amongus@gmail.com>
Sun, 2 May 2010 23:22:21 +0000 (23:22 +0000)
src/transport/plugin_transport_tcp.c
src/transport/plugin_transport_udp.c

index e7512d9805a59d422c08f017b52b7686f8d92766..fad999fa4e1ae97f9b33001fe0f617cb08da8ef2 100644 (file)
@@ -849,6 +849,9 @@ tcp_plugin_send (void *cls,
          t6 = addr;
          af = AF_INET6;
          memset (&a6, 0, sizeof (a6));
+#if HAVE_SOCKADDR_IN_SIN_LEN
+          a6.sin6_len = sizeof (a6);
+#endif
          a6.sin6_family = AF_INET6;
          a6.sin6_port = t6->t6_port;
          memcpy (a6.sin6_addr.s6_addr,
@@ -862,6 +865,9 @@ tcp_plugin_send (void *cls,
          t4 = addr;
          af = AF_INET;
          memset (&a4, 0, sizeof (a4));
+#if HAVE_SOCKADDR_IN_SIN_LEN
+          a4.sin_len = sizeof (a4);
+#endif
          a4.sin_family = AF_INET;
          a4.sin_port = t4->t_port;
          a4.sin_addr.s_addr = t4->ipv4_addr;
index a771bf973a72ed0899d558d0c3df4c855eac13b7..0e7f4d12618259d173346c65a031f3677d2768ad 100644 (file)
@@ -297,6 +297,9 @@ udp_plugin_send (void *cls,
       t6 = addr;
       af = AF_INET6;
       memset (&a6, 0, sizeof (a6));
+#if HAVE_SOCKADDR_IN_SIN_LEN
+      a6.sin6_len = sizeof (a6);
+#endif
       a6.sin6_family = AF_INET6;
       a6.sin6_port = t6->u6_port;
       memcpy (a6.sin6_addr.s6_addr,
@@ -310,6 +313,9 @@ udp_plugin_send (void *cls,
       t4 = addr;
       af = AF_INET;
       memset (&a4, 0, sizeof (a4));
+#if HAVE_SOCKADDR_IN_SIN_LEN
+      a4.sin_len = sizeof (a4);
+#endif
       a4.sin_family = AF_INET;
       a4.sin_port = t4->u_port;
       a4.sin_addr.s_addr = t4->ipv4_addr;