Skip to content
Snippets Groups Projects
Commit 3a9d9281 authored by Olivier Crête's avatar Olivier Crête :ghost:
Browse files

stund: Pass the right length for ipv6

parent e6217f8e
No related branches found
No related tags found
No related merge requests found
......@@ -100,6 +100,8 @@ int listen_socket (int fam, int type, int proto, unsigned int port)
struct sockaddr_in6 in6;
struct sockaddr_storage storage;
} addr;
int len;
if (fd == -1)
{
perror ("Error opening IP port");
......@@ -118,6 +120,7 @@ int listen_socket (int fam, int type, int proto, unsigned int port)
{
case AF_INET:
addr.in.sin_port = htons (port);
len = sizeof (struct sockaddr_in);
break;
case AF_INET6:
......@@ -125,13 +128,14 @@ int listen_socket (int fam, int type, int proto, unsigned int port)
setsockopt (fd, SOL_IPV6, IPV6_V6ONLY, &yes, sizeof (yes));
#endif
addr.in6.sin6_port = htons (port);
len = sizeof (struct sockaddr_in6);
break;
default:
assert (0); /* should never be reached */
}
if (bind (fd, &addr.addr, sizeof (struct sockaddr)))
if (bind (fd, &addr.addr, len))
{
perror ("Error opening IP port");
goto error;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment