Commit Graph

153 Commits

Author SHA1 Message Date
Jeromy 665234f694 WIP: add ConnManager interface method 2017-07-11 23:20:27 -07:00
Jeromy dfaa021cd7 gx publish 4.4.1 2017-07-11 16:08:52 -07:00
Enzo Haussecker e9c24fdc2d Create interface for NAT manager 2017-06-04 21:33:27 -07:00
Enzo Haussecker e571f8a3fb Publicize NAT manager struct 2017-06-03 04:32:47 -07:00
Lars Gierth f0453a2458 basichost: refactor BasicHost construction
There were previously 4 different ways of passing various options
into BasicHost construction.

1. Function parameters to New
2. Option parameters to New
3. Global variables, e.g. NegotiateTimeout
4. Options struct, in the calling code in go-ipfs

This changeset deprecated all of these, and introduces the HostOpts
struct to replace them. It also introduces a new constructor called
NewHost, which accepts a *HostOpts.

The old New constructor continues to work the same way,
but is from now on deprecated too.
2017-05-31 02:30:29 +02:00
Lars Gierth 6cbb93905b basichost: allow overriding Addrs() 2017-05-30 20:39:08 +02:00
Jakub Sztandera ed98e37176
Extend time of observation by the factor of ActivationThresh 2017-04-24 20:26:15 +02:00
Jakub Sztandera 955ebe34a7
Fix obsaddr_test compare function 2017-04-24 20:26:15 +02:00
Jakub Sztandera 356f5ab17d
Modify ObservedAddrSet to better detect our active addrs 2017-04-24 20:26:10 +02:00
Lars Gierth 12f881c55a Remove unused and unfit relay protocol 2017-03-12 03:37:01 +01:00
Jeromy 31557da822 fix multistream import paths 2017-01-10 07:22:30 -08:00
Jeromy 104c97ed57 update go-multistream and use negotiateLazy to allow for readonly streams 2017-01-05 08:10:26 -08:00
Jeromy 26adf7395b identify: make agent version mutable 2016-12-26 02:52:49 -08:00
Jeromy f4ea270ccb use set protos in identify protocol knowledge gathering 2016-11-18 15:09:18 -08:00
Jeromy f61f242f69 Extract netutil to its own package 2016-11-17 10:58:15 -08:00
Jeromy Johnson 9183b8afcf Merge pull request #150 from libp2p/feat/negotiate-timeouts
add negotiate timeout option to basichost
2016-11-10 17:05:44 -08:00
Jeromy 6bccc8c1f5 fix dial log 2016-11-10 16:01:42 -08:00
Jeromy 4f17a651d1 add negotiate timeout option to basichost 2016-11-10 12:40:38 -08:00
Jeromy 077aae473b make bandwidth metrics optional 2016-11-09 16:26:19 -08:00
Jeromy 6f804db71e update dependencies and add deadline methods to streams 2016-11-08 13:11:02 -08:00
Jeromy 232864175d make sure to always close streams when youre done with them 2016-11-05 15:26:07 -07:00
Jeromy 1bad77c7db update packages to add support for getStreams 2016-11-03 18:06:26 -07:00
Jeromy 0e7e451d69 extract NAT traversal code to its own lib 2016-10-24 17:18:49 -07:00
Jeromy 7aced371c7 extract libp2p-swarm 2016-10-05 10:34:57 -07:00
Jeromy 70872ff663 update deps 2016-10-04 21:18:07 -07:00
Jeromy 1a53ad77b9 extract host interface 2016-10-04 16:16:24 -07:00
Jeromy 9910e6a7cf switching to separated conn and interface-conn packages 2016-10-04 15:39:24 -07:00
Jeromy cea1fe131f extract net interface and metrics 2016-10-04 13:56:20 -07:00
Jeromy 0f3ffb2d07 extract conn, addr-util, and testutil 2016-10-04 13:03:14 -07:00
Jeromy 1085a07654 extract protocol and maddr-filter 2016-10-03 21:47:08 -07:00
Jeromy 4dd30d824b switch to using stdlib context package 2016-10-03 11:00:00 -07:00
Jeromy Johnson 87b0e20041 Merge pull request #121 from libp2p/fix/mdns-race
update mdns to version with fixed race condition
2016-09-29 17:28:00 -07:00
Jakub Sztandera 4172857109
fix locking issue introduced in 90eeff42fc 2016-09-29 15:32:27 +02:00
Jeromy 5b6ab8c326 update mdns to version with fixed race condition 2016-09-28 17:57:12 -07:00
Jeromy 2eef5a702e split tcp transports out of the base package 2016-09-25 04:51:27 -07:00
Jeromy Johnson 494ade379b Merge pull request #115 from libp2p/feat/improve-mdns
don't block on DiscoverHandler
2016-09-20 08:08:35 -07:00
Jeromy e6a5c5c241 don't block on DiscoverHandler 2016-09-20 00:28:58 -07:00
Jeromy 9441754369 swarm: add deadline for connection setup 2016-09-18 03:17:22 -07:00
Jeromy Johnson 4ae3510f1a Merge pull request #107 from libp2p/feat/better-dialsync
Improve swarm dial sync code
2016-09-16 15:12:07 -04:00
Jeromy Johnson d3f70d185e Merge pull request #114 from libp2p/feat/context-dial
conn/dial: implement contextDial up the stack
2016-09-16 15:11:27 -04:00
Jeromy d70e1625a8 conn/dial: implement contextDial up the stack 2016-09-15 22:32:51 -07:00
Jakub Sztandera 90eeff42fc
nat: add locks around nat 2016-09-13 13:54:32 +02:00
Jakub Sztandera b6bfae67a0
nat: split into files 2016-09-13 13:54:32 +02:00
Jakub Sztandera 51ffdf87d4
nat: do not shortcircuit permanent mappings
If we use same NAT agent and call for the same permanent mapping
again we get the same mapping, no harm done.

If router dies, we will remap again.
Just pros, no cons.
2016-09-13 13:54:32 +02:00
Jakub Sztandera a3bf168759
Retry NAT punching without duration on mapping failure
Some hardware doesn't support UPnP with durations.
2016-09-13 13:54:32 +02:00
jbenet aafaf38683 identify: handle case where local peer.ID is empty 2016-09-11 19:05:16 -04:00
jbenet 17d39398e9 identify: tests verify we have public keys 2016-09-11 19:05:16 -04:00
jbenet 83eddcae92 identify: consume public key in message.
Make sure to verify that our keys match.
In the rare event they do not, make sure to investigate
what's wrong, and log errors.
2016-09-11 19:05:16 -04:00
jbenet 65273ab3e7 identify: send public key in message 2016-09-11 18:35:51 -04:00
Jeromy 126e150674 swarm: integrate new dialsync code into swarm 2016-09-08 10:37:32 -07:00