License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
use NewNode instead of NewIPFSNode in most of the codebase
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
make mocknet work with node constructor better
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
finish cleanup of old construction method
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
blockservice.New doesnt return an error anymore
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
break up node construction into separate function
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
add error case to default filling on node constructor
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
Fedora/RedHat distros comply with US patent law and remove this curve,
which makes it impossible to run ipfs with distro provided Golang.
License: MIT
Signed-off-by: Pavol Rusnak <stick@gk2.sk>
This commit adds an option to turn off all encryption. This is a mode
used for tests, debugging, achieving protocol implementation interop,
learning about how the protocol works (nc ftw), and worst case
networks which _demand_ to be able to snoop on all the traffic.
(sadly, there are some private intranets like this...). (We should
consider at least _signing_ all this traffic.)
Because of the severity of this sort of thing, this is an
all-or-nothing deal. Either encryption is ON or OFF _fully_.
This way, partially unencrypted nodes cannot be accidentally left
running without the user's understanding. Nodes without encrypted
connections will simply not be able to speak to any of the global
bootstrap nodes, or anybody in the public network.
License: MIT
Signed-off-by: Juan Batiz-Benet <juan@benet.ai>
- add extra check to dialblock test
- move filter to separate package
- also improved tests
- sunk filters down into p2p/net/conn/listener
License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
Signed-off-by: Juan Batiz-Benet <juan@benet.ai>
Except when there is an explicit os.Exit(1) after the Critical line,
then replace with Fatal{,f}.
golang's log and logrus already call os.Exit(1) by default with Fatal.
License: MIT
Signed-off-by: rht <rhtbot@gmail.com>
Different mutliaddrs is not enough. Nodes may share transports.
NAT port mappings will likely only work on the base IP/TCP port
pair. We go one step further, and require different root (IP)
addrs. Just in case some NATs group by IP. In practice, this is
what we want: use addresses only if hosts that are on different
parts of the network have seen this address.
If the same peer observed the same address twice, it would be
double counted as different observations. This change adds a map
to make sure we're counting each observer once.
This is easily extended to require more than two observations,
but i have not yet encountered NATs for whom this is relevant.