aboutsummaryrefslogtreecommitdiff
path: root/src/torcontrol.cpp
diff options
context:
space:
mode:
authorVasil Dimov <vd@FreeBSD.org>2021-05-11 12:44:46 +0200
committerVasil Dimov <vd@FreeBSD.org>2021-05-11 12:46:45 +0200
commit105941b726c078642e785ecb7b6834ba814381b0 (patch)
tree0e45858787e2eb33d419aee4381bf3cfe4d3c8f6 /src/torcontrol.cpp
parent39e306009b7444a86eaa963326972f9d0896525e (diff)
net: use stronger AddLocal() for our I2P address
There are two issues: 1. Our I2P address not added to local addresses. * `externalip=` is used with an IPv4 address (this sets automatically `discover=0`) * No `discover=1` is used * `i2psam=` is used * No `externalip=` is used for our I2P address * `listenonion=1 torcontrol=` are used In this case `AddLocal(LOCAL_MANUAL)` is used for our `.onion` address and `AddLocal(LOCAL_BIND)` for our `.b32.i2p` address, the latter being ignored due to `discover=0`. 2. Our I2P address removed from local addresses even if specified with `externalip=` on I2P proxy restart. * `externalip=` is used with our I2P address (this sets automatically `discover=0`) * No `discover=1` is used * `i2psam=` is used In this case, initially `externalip=` causes our I2P address to be added with `AddLocal(LOCAL_MANUAL)` which overrides `discover=0` and works as expected. However, if later the I2P proxy is shut down we do `RemoveLocal()` in order to stop advertising our I2P address (since we have lost I2P connectivity). When the I2P proxy is started and we reconnect to it, restoring the I2P connectivity, we do `AddLocal(LOCAL_BIND)` which does nothing due to `discover=0`. To resolve those two issues, use `AddLocal(LOCAL_MANUAL)` for I2P which is also what we do with Tor.
Diffstat (limited to 'src/torcontrol.cpp')
0 files changed, 0 insertions, 0 deletions