[tor-commits] [tor/master] Warn if sizeof(tor_socket_t) != sizeof(SOCKET)
nickm at torproject.org
nickm at torproject.org
Wed Jan 18 20:33:44 UTC 2012
commit dea0720dadea8f3915901833115726f4ba0d48f4
Author: Nick Mathewson <nickm at torproject.org>
Date: Tue Jan 17 16:38:47 2012 -0500
Warn if sizeof(tor_socket_t) != sizeof(SOCKET)
---
changes/tor_socket_tests | 3 +++
src/common/compat.c | 5 +++++
2 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/changes/tor_socket_tests b/changes/tor_socket_tests
index 5857d20..b7ee325 100644
--- a/changes/tor_socket_tests
+++ b/changes/tor_socket_tests
@@ -2,6 +2,9 @@
- Find more places in the code that should have been testing for
invalid sockets using the SOCKET_OK macro. Required for a fix
for bug 4533. Bugfix on 0.2.2.28-beta.
+ - Detect attempts to build Tor on (as yet hypothetical) versions
+ of Windows where sizeof(intptr_t) != sizeof(SOCKET). Partial
+ fix for bug 4533. Bugfix on 0.2.2.28-beta.
o Code simplification and refactoring:
- Use a TOR_INVALID_SOCKET macro when initializing a socket to an
diff --git a/src/common/compat.c b/src/common/compat.c
index 7f89037..1f9066d 100644
--- a/src/common/compat.c
+++ b/src/common/compat.c
@@ -2889,6 +2889,11 @@ network_init(void)
log_warn(LD_NET,"Error initializing windows network layer: code was %d",r);
return -1;
}
+ if (sizeof(SOCKET) != sizeof(tor_socket_t)) {
+ log_warn(LD_BUG,"The tor_socket_t type does not match SOCKET in size; Tor "
+ "might not work. (Sizes are %d and %d respectively.)",
+ (int)sizeof(tor_socket_t), (int)sizeof(SOCKET));
+ }
/* WSAData.iMaxSockets might show the max sockets we're allowed to use.
* We might use it to complain if we're trying to be a server but have
* too few sockets available. */
More information about the tor-commits
mailing list