diff options
Diffstat (limited to 'src/transport/plugin_transport_udp.c')
-rw-r--r-- | src/transport/plugin_transport_udp.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/transport/plugin_transport_udp.c b/src/transport/plugin_transport_udp.c index 253425a1a..ea1b616a2 100644 --- a/src/transport/plugin_transport_udp.c +++ b/src/transport/plugin_transport_udp.c | |||
@@ -2681,7 +2681,7 @@ setup_sockets (struct Plugin *plugin, struct sockaddr_in6 *serverAddrv6, struct | |||
2681 | else | 2681 | else |
2682 | { | 2682 | { |
2683 | #if HAVE_SOCKADDR_IN_SIN_LEN | 2683 | #if HAVE_SOCKADDR_IN_SIN_LEN |
2684 | serverAddrv6->sin6_len = sizeof (serverAddrv6); | 2684 | serverAddrv6->sin6_len = sizeof (struct sockaddr_in6); |
2685 | #endif | 2685 | #endif |
2686 | serverAddrv6->sin6_family = AF_INET6; | 2686 | serverAddrv6->sin6_family = AF_INET6; |
2687 | serverAddrv6->sin6_addr = in6addr_any; | 2687 | serverAddrv6->sin6_addr = in6addr_any; |
@@ -2691,8 +2691,9 @@ setup_sockets (struct Plugin *plugin, struct sockaddr_in6 *serverAddrv6, struct | |||
2691 | LOG (GNUNET_ERROR_TYPE_DEBUG, "Binding to IPv6 port %d\n", | 2691 | LOG (GNUNET_ERROR_TYPE_DEBUG, "Binding to IPv6 port %d\n", |
2692 | ntohs (serverAddrv6->sin6_port)); | 2692 | ntohs (serverAddrv6->sin6_port)); |
2693 | tries = 0; | 2693 | tries = 0; |
2694 | while (GNUNET_NETWORK_socket_bind (plugin->sockv6, serverAddrv6, addrlen) != | 2694 | while (GNUNET_OK != GNUNET_NETWORK_socket_bind (plugin->sockv6, |
2695 | GNUNET_OK) | 2695 | (struct sockaddr *) serverAddrv6, |
2696 | addrlen)) | ||
2696 | { | 2697 | { |
2697 | serverAddrv6->sin6_port = htons (GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_STRONG, 33537) + 32000); /* Find a good, non-root port */ | 2698 | serverAddrv6->sin6_port = htons (GNUNET_CRYPTO_random_u32 (GNUNET_CRYPTO_QUALITY_STRONG, 33537) + 32000); /* Find a good, non-root port */ |
2698 | LOG (GNUNET_ERROR_TYPE_DEBUG, | 2699 | LOG (GNUNET_ERROR_TYPE_DEBUG, |
@@ -2727,7 +2728,7 @@ setup_sockets (struct Plugin *plugin, struct sockaddr_in6 *serverAddrv6, struct | |||
2727 | else | 2728 | else |
2728 | { | 2729 | { |
2729 | #if HAVE_SOCKADDR_IN_SIN_LEN | 2730 | #if HAVE_SOCKADDR_IN_SIN_LEN |
2730 | serverAddrv4->sin_len = sizeof (serverAddrv4); | 2731 | serverAddrv4->sin_len = sizeof (struct sockaddr_in); |
2731 | #endif | 2732 | #endif |
2732 | serverAddrv4->sin_family = AF_INET; | 2733 | serverAddrv4->sin_family = AF_INET; |
2733 | serverAddrv4->sin_addr.s_addr = INADDR_ANY; | 2734 | serverAddrv4->sin_addr.s_addr = INADDR_ANY; |