diff --git a/.travis.yml b/.travis.yml index 9f53f7a..6ce5865 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,7 +5,7 @@ os: language: go go: - - 1.7 + - 1.8 install: true diff --git a/multiaddr_test.go b/multiaddr_test.go index 5c3d256..3028605 100644 --- a/multiaddr_test.go +++ b/multiaddr_test.go @@ -157,9 +157,9 @@ func TestStringToBytes(t *testing.T) { } } - testString("/ip4/127.0.0.1/udp/1234", "047f0000011104d2") + testString("/ip4/127.0.0.1/udp/1234", "047f000001910204d2") testString("/ip4/127.0.0.1/tcp/4321", "047f0000010610e1") - testString("/ip4/127.0.0.1/udp/1234/ip4/127.0.0.1/tcp/4321", "047f0000011104d2047f0000010610e1") + testString("/ip4/127.0.0.1/udp/1234/ip4/127.0.0.1/tcp/4321", "047f000001910204d2047f0000010610e1") } func TestBytesToString(t *testing.T) { @@ -184,9 +184,9 @@ func TestBytesToString(t *testing.T) { } } - testString("/ip4/127.0.0.1/udp/1234", "047f0000011104d2") + testString("/ip4/127.0.0.1/udp/1234", "047f000001910204d2") testString("/ip4/127.0.0.1/tcp/4321", "047f0000010610e1") - testString("/ip4/127.0.0.1/udp/1234/ip4/127.0.0.1/tcp/4321", "047f0000011104d2047f0000010610e1") + testString("/ip4/127.0.0.1/udp/1234/ip4/127.0.0.1/tcp/4321", "047f000001910204d2047f0000010610e1") testString("/onion/aaimaq4ygg2iegci:80", "bc030010c0439831b48218480050") } diff --git a/protocols.csv b/protocols.csv deleted file mode 100644 index 996b855..0000000 --- a/protocols.csv +++ /dev/null @@ -1,15 +0,0 @@ -code size name - -4 32 ip4 -6 16 tcp -17 16 udp -33 16 dccp -41 128 ip6 -132 16 sctp -301 0 utp -302 0 udt -400 V unix -421 V ipfs -480 0 http -443 0 https -444 96 onion diff --git a/protocols.go b/protocols.go index 3292be7..9f78f98 100644 --- a/protocols.go +++ b/protocols.go @@ -16,25 +16,26 @@ type Protocol struct { Transcoder Transcoder } -// replicating table here to: -// 1. avoid parsing the csv -// 2. ensuring errors in the csv don't screw up code. -// 3. changing a number has to happen in two places. +// You **MUST** register your multicodecs with +// https://github.com/multiformats/multicodec before adding them here. +// +// TODO: Use a single source of truth for all multicodecs instead of +// distributing them like this... const ( - P_IP4 = 4 - P_TCP = 6 - P_UDP = 17 - P_DCCP = 33 - P_IP6 = 41 - P_QUIC = 81 - P_SCTP = 132 - P_UTP = 301 - P_UDT = 302 - P_UNIX = 400 - P_IPFS = 421 - P_HTTP = 480 - P_HTTPS = 443 - P_ONION = 444 + P_IP4 = 0x0004 + P_TCP = 0x0006 + P_UDP = 0x0111 + P_DCCP = 0x0021 + P_IP6 = 0x0029 + P_QUIC = 0x01CC + P_SCTP = 0x0084 + P_UDT = 0x012D + P_UTP = 0x012E + P_UNIX = 0x0190 + P_IPFS = 0x01A5 + P_HTTP = 0x01E0 + P_HTTPS = 0x01BB + P_ONION = 0x01BC ) // These are special sizes