[tor-commits] [tor/master] Add tor_addr_port_new().

nickm at torproject.org nickm at torproject.org
Tue Sep 4 22:24:07 UTC 2012


commit 585ef0697811e7d62ab17142c8eed2f9372cd074
Author: Linus Nordberg <linus at torproject.org>
Date:   Fri Aug 31 23:02:19 2012 +0200

    Add tor_addr_port_new().
---
 src/common/address.c |   12 ++++++++++++
 src/common/address.h |    2 ++
 src/or/dirvote.c     |    4 ++--
 3 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/src/common/address.c b/src/common/address.c
index e88869f..e5862be 100644
--- a/src/common/address.c
+++ b/src/common/address.c
@@ -1697,3 +1697,15 @@ tor_addr_hostname_is_local(const char *name)
     !strcasecmpend(name, ".local");
 }
 
+
+/** Return a newly allocated tor_addr_port_t with <b>addr</b> and
+    <b>port</b> filled in. */
+tor_addr_port_t *
+tor_addr_port_new(const tor_addr_t *addr, uint16_t port)
+{
+  tor_addr_port_t *ap = tor_malloc_zero(sizeof(tor_addr_port_t));
+  if (addr)
+    tor_addr_copy(&ap->addr, addr);
+  ap->port = port;
+  return ap;
+}
diff --git a/src/common/address.h b/src/common/address.h
index c6c1268..27dff66 100644
--- a/src/common/address.h
+++ b/src/common/address.h
@@ -221,5 +221,7 @@ int tor_inet_ntoa(const struct in_addr *in, char *buf, size_t buf_len);
 char *tor_dup_ip(uint32_t addr) ATTR_MALLOC;
 int get_interface_address(int severity, uint32_t *addr);
 
+tor_addr_port_t *tor_addr_port_new(const tor_addr_t *addr, uint16_t port);
+
 #endif
 
diff --git a/src/or/dirvote.c b/src/or/dirvote.c
index e6601cf..2c9e56d 100644
--- a/src/or/dirvote.c
+++ b/src/or/dirvote.c
@@ -479,8 +479,8 @@ compute_routerstatus_consensus(smartlist_t *votes, int consensus_method,
       if (compare_vote_rs(most, rs) == 0 &&
           !tor_addr_is_null(&rs->status.ipv6_addr)
           && rs->status.ipv6_orport) {
-        smartlist_add(alt_orports, tor_addr_port_alloc(&rs->status.ipv6_addr,
-                                                       rs->status.ipv6_orport));
+        smartlist_add(alt_orports, tor_addr_port_new(&rs->status.ipv6_addr,
+                                                     rs->status.ipv6_orport));
         log_debug(LD_DIR, "picking %s:%d (%s) for voting on \"a\" lines", /* FIXME: remove */
                   fmt_and_decorate_addr(&rs->status.ipv6_addr), rs->status.ipv6_orport,
                   rs->status.nickname);





More information about the tor-commits mailing list