Merge remote-tracking branch 'teor/bug29015'

This commit is contained in:
Nick Mathewson 2019-01-14 13:59:07 -05:00
commit 99947c3ce0
2 changed files with 9 additions and 2 deletions

View file

@ -458,7 +458,9 @@ get_n_open_sockets(void)
* localhost is inaccessible (for example, if the networking * localhost is inaccessible (for example, if the networking
* stack is down). And even if it succeeds, the socket pair will not * stack is down). And even if it succeeds, the socket pair will not
* be able to read while localhost is down later (the socket pair may * be able to read while localhost is down later (the socket pair may
* even close, depending on OS-specific timeouts). * even close, depending on OS-specific timeouts). The socket pair
* should work on IPv4-only, IPv6-only, and dual-stack systems, as long
* as they have the standard localhost addresses.
* *
* Returns 0 on success and -errno on failure; do not rely on the value * Returns 0 on success and -errno on failure; do not rely on the value
* of errno or WSAGetLastError(). * of errno or WSAGetLastError().

View file

@ -105,7 +105,12 @@ sockaddr_eq(struct sockaddr *sa1, struct sockaddr *sa2)
/** /**
* Helper used to implement socketpair on systems that lack it, by * Helper used to implement socketpair on systems that lack it, by
* making a direct connection to localhost. * making a direct connection to localhost.
*/ *
* See tor_socketpair() for details.
*
* The direct connection defaults to IPv4, but falls back to IPv6 if
* IPv4 is not supported.
**/
int int
tor_ersatz_socketpair(int family, int type, int protocol, tor_socket_t fd[2]) tor_ersatz_socketpair(int family, int type, int protocol, tor_socket_t fd[2])
{ {