Introduce two new options to reach the I2P network:
- -i2psam=<ip:port> point to the I2P SAM proxy. If this is set then the I2P network is considered reachable and we can make outgoing connections to I2P peers via that proxy. We listen for and accept incoming connections from I2P peers if the below is set in addition to -i2psam=<ip:port>
- -i2pacceptincoming if this is set together with -i2psam=<ip:port> then we accept incoming I2P connections via the I2P SAM proxy.
Add functional tests.
This is a backport of core#20685 [15/20]
https://github.com/bitcoin/bitcoin/pull/20685/commits/76c35c60f338937071bcfad4211ef7254d3830ec