aboutsummaryrefslogtreecommitdiff
path: root/src/feature/rend
diff options
context:
space:
mode:
Diffstat (limited to 'src/feature/rend')
-rw-r--r--src/feature/rend/rendclient.c5
-rw-r--r--src/feature/rend/rendservice.c3
2 files changed, 3 insertions, 5 deletions
diff --git a/src/feature/rend/rendclient.c b/src/feature/rend/rendclient.c
index f84d221b1a..c6e9dde878 100644
--- a/src/feature/rend/rendclient.c
+++ b/src/feature/rend/rendclient.c
@@ -16,6 +16,7 @@
#include "core/or/circuituse.h"
#include "core/or/connection_edge.h"
#include "core/or/relay.h"
+#include "core/or/crypt_path.h"
#include "feature/client/circpathbias.h"
#include "feature/control/control_events.h"
#include "feature/dirclient/dirclient.h"
@@ -194,9 +195,7 @@ rend_client_send_introduction(origin_circuit_t *introcirc,
/* Initialize the pending_final_cpath and start the DH handshake. */
cpath = rendcirc->build_state->pending_final_cpath;
if (!cpath) {
- cpath = rendcirc->build_state->pending_final_cpath =
- tor_malloc_zero(sizeof(crypt_path_t));
- cpath->magic = CRYPT_PATH_MAGIC;
+ cpath = rendcirc->build_state->pending_final_cpath = crypt_path_new();
if (!(cpath->rend_dh_handshake_state = crypto_dh_new(DH_TYPE_REND))) {
log_warn(LD_BUG, "Internal error: couldn't allocate DH.");
status = -2;
diff --git a/src/feature/rend/rendservice.c b/src/feature/rend/rendservice.c
index 5c267f8e34..38da4cfe7a 100644
--- a/src/feature/rend/rendservice.c
+++ b/src/feature/rend/rendservice.c
@@ -2158,8 +2158,7 @@ rend_service_receive_introduction(origin_circuit_t *circuit,
launched->build_state->service_pending_final_cpath_ref->refcount = 1;
launched->build_state->service_pending_final_cpath_ref->cpath = cpath =
- tor_malloc_zero(sizeof(crypt_path_t));
- cpath->magic = CRYPT_PATH_MAGIC;
+ crypt_path_new();
launched->build_state->expiry_time = now + MAX_REND_TIMEOUT;
cpath->rend_dh_handshake_state = dh;