125 Commits

Author SHA1 Message Date
Steven Allen
4ae0494b14 gx publish 1.6.4 2018-10-24 08:57:56 -07:00
vyzo
86e5d145c9
Merge pull request #42 from mwnx/ip6z
Add "ip6%" multiaddr support (IPv6 with zone ID)
2018-10-21 17:56:03 +03:00
mwnx
a1defdc5aa Fully implement ip6zone support
- Add `FromIPAndZone` function (complementing the `FromIP` function).
- Handle zones when parsing `net.Addr`s.
- In `DialArgs`, return an error if an `ip6zone` is prefixed to an `ip4`
  or to another `ip6zone`.

Note: I was not able to add a listen test (in TestListenAddrs) for
`/zone/.../ip6/...` since there is no link-local address which is
guaranteed to exist on all systems.
2018-10-21 14:46:38 +02:00
Steven Allen
3ce601caf3
Merge pull request #46 from multiformats/feat/private-net
private networks and utility functions
2018-10-18 14:15:32 +01:00
Steven Allen
115f321e21 test to make sure we only consider addresses that *start* with IP addresses
(would have failed with ValueForProtocol)
2018-10-18 14:00:36 +01:00
Steven Allen
0425819f0e use the new multiaddr utilities in IsPublicAddr/IsPrivateAddr
This now means that addresses must *start* with the an IP address, we won't just
pull one out of the middle.
2018-10-18 13:59:24 +01:00
vyzo
7b43167897 fix typo 2018-10-18 13:43:48 +01:00
vyzo
c2b139aab4 test all known unroutable address ranges in IsPublicAddr 2018-10-18 13:43:48 +01:00
vyzo
2945cfc2e6 add IsPrivateAddr 2018-10-18 13:43:48 +01:00
vyzo
49e7bdea20 add test 2018-10-18 13:43:48 +01:00
vyzo
984c8ac58b private networks and IsPublicAddr 2018-10-18 13:43:48 +01:00
Steven Allen
2503d99944
Merge pull request #47 from multiformats/feat/use-mulitaddr-parsers
use multiaddr parsers
2018-10-18 12:56:35 +01:00
Steven Allen
d2517ac772 gx: update go-multiaddr 2018-10-18 11:21:41 +01:00
Steven Allen
9be5ad695f test DialArgs changes 2018-10-18 11:18:58 +01:00
Steven Allen
50cc0e47d1 robust DialArgs 2018-10-18 11:14:05 +01:00
Steven Allen
5bd241dcaf use NewComponent in FromIP
This allows us to do less string-parsing.
2018-10-18 10:18:31 +01:00
Steven Allen
03e871bdbe fix loopback/link-local checks
1. Ensure we check the entire addr, not just a prefix.
2. Make the LinkLocal test skip zones.
3. Consider link-local multicast to be link-local.
4. Defer to *go* to determine if something is, in fact, a loopback/link-local address.
2018-10-17 22:01:57 +01:00
Steven Allen
3895ff188b gx: update go-multiaddr 2018-10-17 22:01:47 +01:00
Steven Allen
1cb9a0e8a6
Merge pull request #40 from multiformats/fix/39
fix loopback addresses
2018-10-01 00:38:29 +00:00
Steven Allen
5d0dbe0fb9 fix IsIPLoopback comment 2018-09-30 17:16:44 -07:00
Steven Allen
fe3aa6e2cf ci: update to go 1.11 2018-09-30 17:13:30 -07:00
Steven Allen
f3041fd8a9 fix loopback addresses
* fe80::1 is not a loopback address
* ::ffff:127.* probably is (IPv4-mapped IPv6)
2018-09-30 16:33:41 -07:00
Steven Allen
ceed2dc9f0
Merge pull request #44 from multiformats/fix/parse-ip-addr
fix converting net.IPAddr to a multiaddr
2018-09-15 21:07:34 +00:00
Steven Allen
bd10f58ac9 replace RegisterNetCodc with Register{From,To}NetAddr and fix ip addr parsing
Unfortunately, the existing abstraction couldn't handle the fact that the "ip"
net could parse to *either* an "/ip4/" or "/ip6/" multiaddr.
2018-09-14 19:36:25 -07:00
Steven Allen
cba4f9fea8 gx publish 1.6.3 2018-06-26 16:23:19 -07:00
Steven Allen
4d4b901d17 gx publish 1.6.2 2018-06-22 11:00:57 -07:00
Steven Allen
31e031dc0d
Merge pull request #43 from multiformats/feat/expose-half-close
expose methods from underlying connection types
2018-06-22 18:00:18 +00:00
Steven Allen
a109f8da85 expose methods from underlying connection types
This sucks but I can't think of a better way to do this. We really do want to
expose these features and doing so through type assertions is very go-like.
2018-06-21 14:20:01 -07:00
Steven Allen
8792ba0a88 gx publish 1.6.1 2018-06-08 20:23:09 -07:00
Steven Allen
418f115760
Merge pull request #37 from multiformats/feat/refactor
turn NetListener() method on listener interface into a helper method
2018-06-06 07:13:14 +00:00
Steven Allen
2f3005bbc1 gx publish 1.6.0 2018-03-10 13:04:48 -08:00
Steven Allen
fad8780c0c add test for netlistener wrapper/unwrapper 2018-03-08 13:36:43 -08:00
Steven Allen
1e79033a77 turn NetListener() method on listener interface into a helper method
This method made implementing the manet.Listener interface annoying. Also, this
lets us drop the "use with caution" warning as we're now *wrapping* the listener
instead of exposing internal state.
2018-03-08 13:36:43 -08:00
Steven Allen
97d80565f6
Merge pull request #38 from multiformats/feat/fast-loopback-check
Make the IP loopback check faster
2018-03-08 21:36:10 +00:00
Steven Allen
ef7ebf9dd8 rename, comment, and move loopback prefixes
Helps readers understand what they're looking at.
2018-03-08 13:34:36 -08:00
Steven Allen
d1762038d1 improve test cases for IsIPLoopback 2018-03-08 12:57:53 -08:00
Steven Allen
9d1c543b50 Make the IP loopback check faster
Decapsulate currently allocates a lot and this appears to have been causing some
issues (hard to tell, pprof is misbehaving).

Note: I removed the TODO as this function now *only* checks if we're dealing
with a loopback address. Not sure what `OverIPLoopback` was supposed to mean.

Note 2: Decapsulate actually checked if the IP6 loopback addresses
appeared *anywhere* in the multiadder. However, as we weren't doing this for
IP4, I decided to simplify this and only check prefixes.
2018-03-08 12:52:30 -08:00
Hector Sanjuan
6040dff26d
Merge pull request #35 from multiformats/fix/travis
use standard travis-ci scripts and enable sudo
2018-01-26 10:18:37 +01:00
Steven Allen
eb7107a2fa use standard travis-ci scripts and enable sudo
This should fix CI.

Supersedes #34.
2018-01-25 15:32:05 -08:00
Steven Allen
28713befbf gx publish 1.5.7 2018-01-19 20:51:00 -08:00
Steven Allen
4ce984eed7 gx publish 1.5.6 2017-12-04 23:32:49 +00:00
Lars Gierth
376ba58703 Merge pull request #31 from multiformats/feat/udp
Added UDP datagram packet connection support.
2017-08-13 05:35:25 +02:00
Tom Swindell
49f84c7c45 Added UDP datagram packet connection support.
Signed-off-by: Tom Swindell <t.swindell@rubyx.co.uk>
2017-08-13 04:50:23 +02:00
Jakub Sztandera
f41dec4bb7 Disable OSX
It is slow and causes queue in whole org.
2017-07-11 19:48:49 +02:00
Jeromy
e58d9b98b9 gx publish 1.5.5 2017-07-11 10:30:33 -07:00
Jakub Sztandera
a7b93d1185 Merge pull request #27 from jackkleeman/patch-1
Check for local ip6 addresses with more flexbility
2017-03-28 18:08:41 +02:00
Jakub Sztandera
2b541b7fc2 Merge pull request #26 from multiformats/docs-improvements
README/docs: Improved README, make golint happy
2017-03-28 18:07:09 +02:00
Jack Kleeman
ee4ab58778 Check for local ip6 addresses with more flexbility
Currently IsIPLoopback returns true for any multiaddr starting ip4/127, but only returns true on ip6 addresses that exactly equal ip6/::1. So /ip6/::1/tcp/4001 for example does not return true. Instead we should check whether ip6/::1 is contained in the multiaddr, and to do that I simply decapsulated and checked to see if the result is different. It seems this was not caught by tests as none are present specifically for this function.
2017-03-26 13:33:16 +01:00
Jeromy
6c6b26b274 fix go vet issue 2017-03-23 18:45:49 -07:00
Jeromy
c35c6b25b9 gx publish 1.5.4 2017-03-23 18:44:26 -07:00