if (ip == NULL) {
goto err;
}
+
+ log_info(LD_REND, "Picked intro point: %s", extend_info_describe(info));
extend_info_free(info);
return ip;
err:
desc);
if (num_new_intro_points != 0) {
log_info(LD_REND, "Service %s just picked %u intro points and wanted "
- "%u. It currently has %d intro points. "
- "Launching ESTABLISH_INTRO circuit shortly.",
+ "%u for %s descriptor. It currently has %d intro "
+ "points. Launching ESTABLISH_INTRO circuit shortly.",
safe_str_client(service->onion_address),
num_new_intro_points,
service->config.num_intro_points - num_intro_points,
+ (desc == service->desc_current) ? "current" : "next",
num_intro_points);
/* We'll build those introduction point into the descriptor once we have
* confirmation that the circuits are opened and ready. However,
/* Launch a circuit to the intro point. */
ip->circuit_retries++;
if (hs_circ_launch_intro_point(service, ip, ei) < 0) {
- log_warn(LD_REND, "Unable to launch intro circuit to node %s "
+ log_info(LD_REND, "Unable to launch intro circuit to node %s "
"for service %s.",
safe_str_client(extend_info_describe(ei)),
safe_str_client(service->onion_address));
tor_free(node->ri->onion_curve25519_pkey); /* Avoid memleak. */
tor_free(node->ri->cache_info.signing_key_cert);
crypto_pk_free(node->ri->onion_pkey);
- expect_log_msg_containing("just picked 1 intro points and wanted 3. It "
- "currently has 0 intro points. Launching "
- "ESTABLISH_INTRO circuit shortly.");
+ expect_log_msg_containing("just picked 1 intro points and wanted 3 for next "
+ "descriptor. It currently has 0 intro points. "
+ "Launching ESTABLISH_INTRO circuit shortly.");
teardown_capture_of_logs();
tt_int_op(digest256map_size(service->desc_current->intro_points.map),
OP_EQ, 1);