Browse Source

Function to add an ipv4 address to an address_set

This is a convenience function, so callers don't need to wrap
the IPv4 address.
Nick Mathewson 6 years ago
parent
commit
0640da4269
2 changed files with 11 additions and 0 deletions
  1. 9 0
      src/common/address_set.c
  2. 2 0
      src/common/address_set.h

+ 9 - 0
src/common/address_set.c

@@ -97,6 +97,15 @@ address_set_add(address_set_t *set, const struct tor_addr_t *addr)
   }
 }
 
+/** As address_set_add(), but take an ipv4 address in host order. */
+void
+address_set_add_ipv4h(address_set_t *set, uint32_t addr)
+{
+  tor_addr_t a;
+  tor_addr_from_ipv4h(&a, addr);
+  address_set_add(set, &a);
+}
+
 /**
  * Return true if <b>addr</b> if a member of <b>set</b>.  (And probably,
  * return false if <b>addr</b> is not a member of set.)

+ 2 - 0
src/common/address_set.h

@@ -14,6 +14,7 @@
 #define TOR_ADDRESS_SET_H
 
 #include "orconfig.h"
+#include "torint.h"
 
 /**
  * An address_set_t represents a set of tor_addr_t values. The implementation
@@ -26,6 +27,7 @@ struct tor_addr_t;
 address_set_t *address_set_new(int max_addresses_guess);
 void address_set_free(address_set_t *set);
 void address_set_add(address_set_t *set, const struct tor_addr_t *addr);
+void address_set_add_ipv4h(address_set_t *set, uint32_t addr);
 int address_set_probably_contains(address_set_t *set,
                                   const struct tor_addr_t *addr);