mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Merge branch 'nss_squashed' into nss_merge
This commit is contained in:
@@ -449,6 +449,20 @@ connection_new(int type, int socket_family)
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
connection_close_and_invalidate_socket(connection_t *conn)
|
||||
{
|
||||
if (connection_speaks_cells(conn)) {
|
||||
or_connection_t *or_conn = TO_OR_CONN(conn);
|
||||
tor_tls_free(or_conn->tls);
|
||||
or_conn->tls = NULL;
|
||||
or_conn->base_.s = TOR_INVALID_SOCKET;
|
||||
} else {
|
||||
tor_close_socket(conn->s);
|
||||
conn->s = TOR_INVALID_SOCKET;
|
||||
}
|
||||
}
|
||||
|
||||
/** Initializes conn. (you must call connection_add() to link it into the main
|
||||
* array).
|
||||
*
|
||||
@@ -614,9 +628,8 @@ connection_free_minimal(connection_t *conn)
|
||||
tor_free(conn->address);
|
||||
|
||||
if (connection_speaks_cells(conn)) {
|
||||
connection_close_and_invalidate_socket(conn);
|
||||
or_connection_t *or_conn = TO_OR_CONN(conn);
|
||||
tor_tls_free(or_conn->tls);
|
||||
or_conn->tls = NULL;
|
||||
or_handshake_state_free(or_conn->handshake_state);
|
||||
or_conn->handshake_state = NULL;
|
||||
tor_free(or_conn->nickname);
|
||||
@@ -692,9 +705,7 @@ connection_free_minimal(connection_t *conn)
|
||||
}
|
||||
|
||||
if (SOCKET_OK(conn->s)) {
|
||||
log_debug(LD_NET,"closing fd %d.",(int)conn->s);
|
||||
tor_close_socket(conn->s);
|
||||
conn->s = TOR_INVALID_SOCKET;
|
||||
connection_close_and_invalidate_socket(conn);
|
||||
}
|
||||
|
||||
if (conn->type == CONN_TYPE_OR &&
|
||||
@@ -820,9 +831,7 @@ connection_close_immediate(connection_t *conn)
|
||||
conn->read_blocked_on_bw = 0;
|
||||
conn->write_blocked_on_bw = 0;
|
||||
|
||||
if (SOCKET_OK(conn->s))
|
||||
tor_close_socket(conn->s);
|
||||
conn->s = TOR_INVALID_SOCKET;
|
||||
connection_close_and_invalidate_socket(conn);
|
||||
if (conn->linked)
|
||||
conn->linked_conn_is_closed = 1;
|
||||
if (conn->outbuf)
|
||||
|
||||
@@ -121,6 +121,7 @@
|
||||
#include "lib/evloop/compat_libevent.h"
|
||||
#include "lib/encoding/confline.h"
|
||||
#include "lib/evloop/timers.h"
|
||||
#include "lib/crypt_ops/crypto_init.h"
|
||||
|
||||
#include <event2/event.h>
|
||||
|
||||
@@ -3503,10 +3504,11 @@ tor_init(int argc, char *argv[])
|
||||
const char *version = get_version();
|
||||
|
||||
log_notice(LD_GENERAL, "Tor %s running on %s with Libevent %s, "
|
||||
"OpenSSL %s, Zlib %s, Liblzma %s, and Libzstd %s.", version,
|
||||
"%s %s, Zlib %s, Liblzma %s, and Libzstd %s.", version,
|
||||
get_uname(),
|
||||
tor_libevent_get_version_str(),
|
||||
crypto_openssl_get_version_str(),
|
||||
crypto_get_library_name(),
|
||||
crypto_get_library_version_string(),
|
||||
tor_compress_supports_method(ZLIB_METHOD) ?
|
||||
tor_compress_version_str(ZLIB_METHOD) : "N/A",
|
||||
tor_compress_supports_method(LZMA_METHOD) ?
|
||||
|
||||
Reference in New Issue
Block a user