commit b998431a33db2be0246f176ea0077b98d5258866 Merge: 8b62a73 b7cf7bd Author: Nick Mathewson nickm@torproject.org Date: Wed Jan 16 22:32:12 2013 -0500
Merge branch '024_msvc_squashed'
Conflicts: src/or/or.h srcwin32/orconfig.h
Makefile.nmake | 10 ++++++ changes/7304 | 7 ++++ changes/build_with_msvc | 4 ++ src/common/Makefile.nmake | 5 ++- src/common/compat.h | 12 +++++++- src/common/crypto.c | 2 +- src/common/torint.h | 4 ++ src/common/tortls.c | 15 +++++---- src/common/util.c | 3 +- src/or/Makefile.nmake | 74 +++++++++++++++++++++++++++++++++++---------- src/or/addressmap.c | 2 +- src/or/channel.h | 2 +- src/or/or.h | 29 ++++++++++-------- src/or/routerparse.c | 2 +- src/test/Makefile.nmake | 21 ++++++++++--- src/win32/orconfig.h | 3 +- 16 files changed, 147 insertions(+), 48 deletions(-)
diff --cc src/common/tortls.c index 1d093df,1e01815..251915d --- a/src/common/tortls.c +++ b/src/common/tortls.c @@@ -127,26 -127,14 +127,32 @@@ typedef struct tor_tls_context_t crypto_pk_t *auth_key; } tor_tls_context_t;
+/** Return values for tor_tls_classify_client_ciphers. + * + * @{ + */ +/** An error occurred when examining the client ciphers */ +#define CIPHERS_ERR -1 +/** The client cipher list indicates that a v1 handshake was in use. */ +#define CIPHERS_V1 1 +/** The client cipher list indicates that the client is using the v2 or the + * v3 handshake, but that it is (probably!) lying about what ciphers it + * supports */ +#define CIPHERS_V2 2 +/** The client cipher list indicates that the client is using the v2 or the + * v3 handshake, and that it is telling the truth about what ciphers it + * supports */ +#define CIPHERS_UNRESTRICTED 3 +/** @} */ + #define TOR_TLS_MAGIC 0x71571571
+ typedef enum { + TOR_TLS_ST_HANDSHAKE, TOR_TLS_ST_OPEN, TOR_TLS_ST_GOTCLOSE, + TOR_TLS_ST_SENTCLOSE, TOR_TLS_ST_CLOSED, TOR_TLS_ST_RENEGOTIATE, + TOR_TLS_ST_BUFFEREVENT + } tor_tls_state_t; + /** Holds a SSL object and its associated data. Members are only * accessed from within tortls.c. */ diff --cc src/or/or.h index eaa6010,6ec7c3a..a6f3d3e --- a/src/or/or.h +++ b/src/or/or.h @@@ -2887,15 -2849,7 +2890,15 @@@ typedef struct origin_circuit_t
/** Kludge to help us prevent the warn in bug #6475 and eventually * debug why we are not seeing first hops in some cases. */ - path_state_t path_state : 3; - ENUM_BF(path_state_t) path_state : 2; ++ ENUM_BF(path_state_t) path_state : 3; + + /** For path probing. Store the temporary probe stream ID + * for response comparison */ + streamid_t pathbias_probe_id; + + /** For path probing. Store the temporary probe address nonce + * (in host byte order) for response comparison. */ + uint32_t pathbias_probe_nonce;
/** Set iff this is a hidden-service circuit which has timed out * according to our current circuit-build timeout, but which has