Browse Source

Don't call tor_tls_set_logged_address till after checking conn->tls.

Fixes bug 4531.
George Kadianakis 12 years ago
parent
commit
0cfdd88adb
1 changed files with 3 additions and 2 deletions
  1. 3 2
      src/or/connection_or.c

+ 3 - 2
src/or/connection_or.c

@@ -1099,12 +1099,13 @@ connection_tls_start_handshake(or_connection_t *conn, int receiving)
   conn->_base.state = OR_CONN_STATE_TLS_HANDSHAKING;
   tor_assert(!conn->tls);
   conn->tls = tor_tls_new(conn->_base.s, receiving);
-  tor_tls_set_logged_address(conn->tls, // XXX client and relay?
-      escaped_safe_str(conn->_base.address));
   if (!conn->tls) {
     log_warn(LD_BUG,"tor_tls_new failed. Closing.");
     return -1;
   }
+  tor_tls_set_logged_address(conn->tls, // XXX client and relay?
+      escaped_safe_str(conn->_base.address));
+
 #ifdef USE_BUFFEREVENTS
   if (connection_type_uses_bufferevent(TO_CONN(conn))) {
     const int filtering = get_options()->_UseFilteringSSLBufferevents;