[tor-commits] [tor/master] Consistently format addresses in node_get_address_string

nickm at torproject.org nickm at torproject.org
Thu Feb 11 17:37:18 UTC 2016


commit 4db5a35e669a03db33d04632349ec95022de53cf
Author: teor (Tim Wilson-Brown) <teor2345 at gmail.com>
Date:   Wed Jan 20 13:17:08 2016 +1100

    Consistently format addresses in node_get_address_string
    
    Also, don't write to a buffer with length zero.
---
 src/or/nodelist.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/or/nodelist.c b/src/or/nodelist.c
index c8f93bf..28d8741 100644
--- a/src/or/nodelist.c
+++ b/src/or/nodelist.c
@@ -863,13 +863,13 @@ node_get_prim_addr_ipv4h(const node_t *node)
 void
 node_get_address_string(const node_t *node, char *buf, size_t len)
 {
-  if (node->ri) {
-    strlcpy(buf, fmt_addr32(node->ri->addr), len);
-  } else if (node->rs) {
+  uint32_t ipv4_addr = node_get_prim_addr_ipv4h(node);
+
+  if (tor_addr_is_valid_ipv4h(ipv4_addr, 0)) {
     tor_addr_t addr;
-    tor_addr_from_ipv4h(&addr, node->rs->addr);
+    tor_addr_from_ipv4h(&addr, ipv4_addr);
     tor_addr_to_str(buf, &addr, len, 0);
-  } else {
+  } else if (len > 0) {
     buf[0] = '\0';
   }
 }





More information about the tor-commits mailing list