|
@@ -17,7 +17,10 @@
|
|
|
*/
|
|
|
|
|
|
#define EXT_ORPORT_PRIVATE
|
|
|
+#define TOR_CHANNEL_INTERNAL_
|
|
|
#include "core/or/or.h"
|
|
|
+#include "core/or/channel.h"
|
|
|
+#include "core/or/channeltls.h"
|
|
|
#include "core/mainloop/connection.h"
|
|
|
#include "core/or/connection_or.h"
|
|
|
#include "feature/control/control_events.h"
|
|
@@ -91,6 +94,12 @@ connection_ext_or_transition(or_connection_t *conn)
|
|
|
conn->base_.type = CONN_TYPE_OR;
|
|
|
TO_CONN(conn)->state = 0;
|
|
|
connection_or_event_status(conn, OR_CONN_EVENT_NEW, 0);
|
|
|
+
|
|
|
+ tor_assert(conn->chan == NULL);
|
|
|
+
|
|
|
+ channel_t *chan = channel_tls_handle_incoming(conn);
|
|
|
+ channel_listener_queue_incoming(channel_tls_get_listener(), chan);
|
|
|
+
|
|
|
connection_tls_start_handshake(conn, 1);
|
|
|
}
|
|
|
|