]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Merge remote-tracking branch 'public/bug4645'
authorNick Mathewson <nickm@torproject.org>
Wed, 2 Apr 2014 01:49:01 +0000 (21:49 -0400)
committerNick Mathewson <nickm@torproject.org>
Wed, 2 Apr 2014 01:49:01 +0000 (21:49 -0400)
Conflicts:
src/or/dirserv.c

1  2 
src/common/address.c
src/common/address.h
src/or/config.c
src/or/directory.c
src/or/dirserv.c
src/test/test_addr.c

Simple merge
Simple merge
diff --cc src/or/config.c
Simple merge
Simple merge
index 19ed12d7c16bc445611421e01572038ccf068a45,e3e6519dd87047c646ca56622bf59f67b7c227b7..b6c5dd41f44cd817920a8a51e86c3909d8beb9fe
@@@ -504,12 -524,20 +504,15 @@@ dirserv_free_fingerprint_list(void
  static int
  dirserv_router_has_valid_address(routerinfo_t *ri)
  {
+   tor_addr_t addr;
    if (get_options()->DirAllowPrivateAddresses)
      return 0; /* whatever it is, we're fine with it */
-   if (is_internal_IP(ri->addr, 0)) {
 -  if (tor_addr_parse(&addr, ri->address) != AF_INET) {
 -    log_info(LD_DIRSERV,"Router %s published non-IPv4 address '%s'. Refusing.",
 -             router_describe(ri),
 -             ri->address);
 -    return -1;
 -  }
++  tor_addr_from_ipv4h(&addr, ri->addr);
+   if (tor_addr_is_internal(&addr, 0)) {
      log_info(LD_DIRSERV,
 -             "Router %s published internal IP address '%s'. Refusing.",
 -             router_describe(ri), ri->address);
 +             "Router %s published internal IP address. Refusing.",
 +             router_describe(ri));
      return -1; /* it's a private IP, we should reject it */
    }
    return 0;
Simple merge