config: Really ignore non ORPorts when removing duplicates
commitd04a27bed20cf44766fc30583c7a00108f42a09a
authorDavid Goulet <dgoulet@torproject.org>
Tue, 17 Nov 2020 14:40:16 +0000 (17 09:40 -0500)
committerDavid Goulet <dgoulet@torproject.org>
Tue, 17 Nov 2020 14:40:16 +0000 (17 09:40 -0500)
tree202ccb15a7a240e13999d45e62ed5dcbb58afe33
parentb13f32ee97e9a10e578c6f01775a1e2449b28693
config: Really ignore non ORPorts when removing duplicates

The function in charge of removing duplicate ORPorts from our configured ports
was skipping all non ORPorts port but only for the outer loop thus resulting
in comparing an ORPort with a non-ORPort which lead to problems.

For example, tor configured with the following would fail:

  ORPort auto
  DirPort auto

Both end up being the same configuration except that one is a OR listener and
one is a Dir listener. Thus because of the missing check in the inner loop,
they looked exactly the same and thus one is removed.

Fixes #40195

Signed-off-by: David Goulet <dgoulet@torproject.org>
changes/ticket40195 [new file with mode: 0644]
src/feature/relay/relay_config.c