From 50028e4d6809f73194ed32031b3c854623582b26 Mon Sep 17 00:00:00 2001 From: George Kadianakis Date: Wed, 9 Jan 2013 15:52:35 +0200 Subject: [PATCH] Mention name of the transport used when we learn the fpr of a bridge. --- src/or/entrynodes.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/or/entrynodes.c b/src/or/entrynodes.c index e583b881e5..bddbd24962 100644 --- a/src/or/entrynodes.c +++ b/src/or/entrynodes.c @@ -1501,9 +1501,17 @@ learned_router_identity(const tor_addr_t *addr, uint16_t port, bridge_info_t *bridge = get_configured_bridge_by_addr_port_digest(addr, port, digest); if (bridge && tor_digest_is_zero(bridge->identity)) { + char *transport_info = NULL; + const char *transport_name = + find_transport_name_by_bridge_addrport(addr, port); + if (transport_name) + tor_asprintf(&transport_info, " (with transport '%s')", transport_name); + memcpy(bridge->identity, digest, DIGEST_LEN); - log_notice(LD_DIR, "Learned fingerprint %s for bridge %s", - hex_str(digest, DIGEST_LEN), fmt_addrport(addr, port)); + log_notice(LD_DIR, "Learned fingerprint %s for bridge %s%s.", + hex_str(digest, DIGEST_LEN), fmt_addrport(addr, port), + transport_info ? transport_info : ""); + tor_free(transport_info); } } @@ -1629,7 +1637,9 @@ find_bridge_by_digest(const char *digest) return NULL; } -/* DOCDOC find_transport_name_by_bridge_addrport */ +/** Given the addr and port of a bridge, if that bridge + * supports a pluggable transport, return its name. Otherwise, return + * NULL. */ const char * find_transport_name_by_bridge_addrport(const tor_addr_t *addr, uint16_t port) {