commit c59b572e934ec501cf7db78d10e36a6cf984b97b Author: Kris Katterjohn katterjohn@gmail.com Date: Mon Jan 7 17:28:21 2019 -0600
Fix tor_ersatz_socketpair on IPv6-only systems
In get_local_listener used by tor_ersatz_socketpair, the address family used when binding the IPv6 socket was AF_INET instead of AF_INET6.
Fixes bug 28995; bugfix on 0.3.5.1-alpha.
Signed-off-by: Kris Katterjohn katterjohn@gmail.com --- changes/bug28995 | 5 +++++ src/lib/net/socketpair.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/changes/bug28995 b/changes/bug28995 new file mode 100644 index 000000000..f76b6a085 --- /dev/null +++ b/changes/bug28995 @@ -0,0 +1,5 @@ + o Minor bugfix (IPv6): + Fix tor_ersatz_socketpair on IPv6-only systems. Previously, + the IPv6 socket was bound using an address family of AF_INET + instead of AF_INET6. Fixes bug 28995; bugfix on 0.3.5.1-alpha. + Patch from Kris Katterjohn. diff --git a/src/lib/net/socketpair.c b/src/lib/net/socketpair.c index 380338f15..6a21581d8 100644 --- a/src/lib/net/socketpair.c +++ b/src/lib/net/socketpair.c @@ -62,7 +62,7 @@ get_local_listener(int family, int type) len = sizeof(sin); } else { sa = (struct sockaddr *) &sin6; - sin6.sin6_family = AF_INET; + sin6.sin6_family = AF_INET6; sin6.sin6_addr.s6_addr[15] = 1; len = sizeof(sin6); }
tor-commits@lists.torproject.org