GitLab is used only for code review, issue tracking and project management. Canonical locations for source code are still and

  1. 11 Aug, 2020 2 commits
    • c's avatar
      doc: Add "private4" and "private6" description · 79db0879
      c authored
    • c's avatar
      Add is_torrc flag for parsing address policies · 7b72e11a
      c authored
      This flag allows tor to parse address policies differently depending on
      whether they are from torrc or router descriptors. Currently (see
      #40066) we only want to accept "private4" and "private6" virtual
      addresses in torrc and not in router descriptors.
      Also update tests to be compatible with the new function prototype.
  2. 10 Aug, 2020 2 commits
  3. 03 Aug, 2020 2 commits
  4. 27 Jul, 2020 2 commits
    • c's avatar
      dirparse: fix logic error I introduced last commit · 83bf683a
      c authored
      Evidently this code only deals with ExitPolicy (with the port
      specifiers) so we always expect a port following private, private4, or
    • c's avatar
      dirparse: Parse 'private4' and 'private6' policies · bb948b2e
      c authored
      With this commit alone, Tor only parses these new shortcuts for private
      addresses (IPv4- and IPv6-only, respectively). This is part of the work
      toward #40066, and alone this commit does not do anything interesting.
  5. 24 Jul, 2020 5 commits
  6. 23 Jul, 2020 10 commits
  7. 22 Jul, 2020 8 commits
  8. 21 Jul, 2020 9 commits
    • David Goulet's avatar
      Rename check_server_ports to check_and_prune_server_ports · a4c5b7d7
      David Goulet authored
      This is an automated commit, generated by this command:
      ./scripts/maint/ \
              check_server_ports check_and_prune_server_ports
    • David Goulet's avatar
      relay: Change router_can_extend_over_ipv6() to look at configured port · 28c1b604
      David Goulet authored
      In routerconf_find_ipv6_or_ap(), we check if the returned ORPort is internal
      but not for listening. This means that IPv6 [::] is considered internal.
      Thus, we can't use it, we have to look directly at the configured address and
      port and if they are valid, we do consider that we have a valid IPv6 ORPort
      and that we can thus extend in IPv6.
      Related #33246
      Signed-off-by: David Goulet's avatarDavid Goulet <>
    • David Goulet's avatar
      relay: Remove possible ORPorts duplicate from parsed list · 803e769f
      David Goulet authored
      Now that tor automatically binds to IPv4 _and_ IPv6, in order to avoid
      breaking configurations, we sanitize the parsed lists for duplicate ORPorts.
      It is possible to happen because we still allow this configuration;
        ORPort 9888
        ORPort [4242::1]:9888
      Meaning that the first ORPort value will bind to _and_ [::]:9888
      which would lead to an error when attempting to bind on [4242::1]:9888.
      However, that configuration is accepted today and thus we must not break it.
      To remedy, we now sanitize the parsed list and prioritize an ORPort that has
      an explicit address over the global one.
      A warning is emitted if such configuration pattern is found. This is only for
      the ORPort.
      Related to #33246
      Signed-off-by: David Goulet's avatarDavid Goulet <>
    • David Goulet's avatar
      relay: Automatically Enable an IPv6 ORPort · c3a0f757
      David Goulet authored
      This commit makes it that if the ORPort is set with a single port, it will
      bind to both global listen IPv4 and IPv6 addresses.
      To pin an "ORPort <PORT>" to be IPv4 or IPv6, the IPv4Only/IPv6Only flags are
      honored thus this will _only_ bind on IPv6 for that port value:
        ORPort 9050 IPv6Only
          Results in: [::]:9050
        ORPort 9051 IPv4Only
          Results in: []:9051
      Attempting to configure an explicit IPv4 address with IPv6Only flag is an
      error and vice versa.
      Closes #33246
      Signed-off-by: David Goulet's avatarDavid Goulet <>
    • Nick Mathewson's avatar
      Changes file for ticket 40055 · 354eb0c0
      Nick Mathewson authored
    • Nick Mathewson's avatar
      Rename router_get_advertised_*() functions. · 088100d6
      Nick Mathewson authored
      These now (or_port and dir_port) now have "find" names, since they
      look at the portcfg first, then at the actual ports from the
      This is an automated commit, generated by this command:
      ./scripts/maint/ \
              router_get_advertised_or_port routerconf_find_or_port \
              router_get_advertised_ipv6_or_ap routerconf_find_ipv6_or_ap \
              router_has_advertised_ipv6_orport routerconf_has_ipv6_orport \
              router_get_advertised_dir_port routerconf_find_dir_port
    • Nick Mathewson's avatar
    • Nick Mathewson's avatar
      Rename get_primary_dir_port() · 39146383
      Nick Mathewson authored
      Also, remove get_primary_or_port() -- nothing used it.
    • Nick Mathewson's avatar