Commit Graph

118 Commits

Author SHA1 Message Date
Neil Alexander
3c1e00f23f
Add CircleCI config.yml
This is an alternative to the TravisCI build file. CircleCI can automatically collect build artifacts which is nice!
2018-03-02 19:13:20 +00:00
Neil Alexander
390f7527f6
Update generate.sh 2018-03-01 18:28:37 +00:00
Neil Alexander
9285e0fe25 Mismatching GOARCH and debian arch 2018-03-01 18:06:53 +00:00
Neil Alexander
3089f2326e Add generate script for Debian .debs into contrib 2018-03-01 18:01:18 +00:00
Arceliar
33c9f74f48
Merge pull request #22 from Arceliar/udp_mtu_fix
Mostly working PMTU discovery when going over UDP links
2018-02-25 20:43:10 -06:00
Arceliar
63b55cda62 Mostly working PMTU discovery when going over UDP links 2018-02-25 20:24:36 -06:00
Arceliar
0fae932512
Merge pull request #21 from Arceliar/testing
Breaking wire format cleanup and other updates
2018-02-23 17:10:45 -06:00
Arceliar
0470f6f1c1 cleanup 2018-02-23 13:04:52 -06:00
Arceliar
bb3ae8b39b temporarily limit PMTU to 2048, as a workaround to some pathelogical behavior where a TCP stream carried over a UDP peer can throttle down to 0 in the presence of significant packet loss 2018-02-23 12:46:22 -06:00
Arceliar
b4ea98862b
Merge pull request #20 from neilalexander/multithreadgenkeys
Multithread misc/genkeys.go
2018-02-21 12:03:28 -06:00
Neil Alexander
7101e147f4 Multithread misc/genkeys.go 2018-02-21 15:57:03 +00:00
Arceliar
d3dc7765f2 trying to debug UDP+large MTU issues 2018-02-20 17:31:12 -06:00
Arceliar
a81c361484 tcp reconnect bufix, test with bufio, and switch back to tcp auto-peering by default to continue testing 2018-02-19 23:22:36 -06:00
Arceliar
a21a039b57 remove unused field from peer 2018-02-19 19:47:11 -06:00
Arceliar
4045597516 Use larger UDP chunks for link-local IP and let the OS fragment it. Switch to UDP for link-local peers. Minor code cleanup for TCP. 2018-02-19 19:34:51 -06:00
Arceliar
8c7d514032 Merge branch 'master' into testing 2018-02-19 18:36:06 -06:00
Arceliar
4f710ac2da bash -> sh 2018-02-18 16:07:27 -06:00
Arceliar
a1afebc0df
Merge pull request #19 from neilalexander/sigterm
Catch SIGTERM and Windows service termination
2018-02-18 15:35:47 -06:00
Neil Alexander
aef62afb1b gofmt -s -w yggdrasil.go 2018-02-18 21:32:55 +00:00
Neil Alexander
0176d25235 Catch SIGTERM instead of (impossible to capture) SIGKILL, also capture Windows service termination 2018-02-18 21:16:47 +00:00
Arceliar
71150fcb86 ignore root tstamp updates if we just updated, to throttle the rate at which updates (and new signatures) can propagate 2018-02-17 23:57:24 -06:00
Arceliar
a66a29779a Slightly nicer way to throttle peer announcements 2018-02-17 23:41:42 -06:00
Arceliar
0fc7401635 check root before adding peers to the switch lookupTable, instead of during each lookup 2018-02-17 23:14:23 -06:00
Arceliar
430d49d8a4 send fewer link announcements, fix a ttl encoding bug, and remove unnecessary key field from the wire format for dht req/res 2018-02-17 21:59:08 -06:00
Arceliar
8ba11b86bb remove duplicate tcp connections 2018-02-17 20:44:23 -06:00
Arceliar
25f00c1c7a disable keys in link protocol traffic, since these are already known, *breaks backwards compat* 2018-02-17 20:30:59 -06:00
Arceliar
c0579024c0
Merge pull request #18 from Arceliar/rumormill
Add a rumor mill to throttle dht maintenance traffic
2018-02-17 17:25:51 -06:00
Arceliar
da44ec282f Add a rumor mill to throttle dht maintenance traffic 2018-02-17 17:10:08 -06:00
Arceliar
032ad3a162
Merge pull request #17 from neilalexander/windowssvc
Add support for running Yggdrasil as a Windows service
2018-02-16 11:56:05 -06:00
Neil Alexander
b57491656b Fix .travis.yml for these builds 2018-02-16 14:21:57 +00:00
Neil Alexander
d02250c94d Update README.md for Linux/systemd too 2018-02-16 14:19:26 +00:00
Neil Alexander
c453770b85 Add support for running Yggdrasil as a Windows service (using minwinsvc) 2018-02-16 14:12:44 +00:00
Arceliar
8a12a88447
Merge pull request #16 from neilalexander/notuntap
Allow setting IfName to 'none' to run without TUN/TAP
2018-02-16 00:31:50 -06:00
Neil Alexander
02473158d4 Allow setting IfName to 'none' to run without TUN/TAP 2018-02-15 22:29:13 +00:00
Arceliar
120ce8bd2f
Merge pull request #15 from neilalexander/packettoobig
Implement Path MTU Discovery using session MTU
2018-02-15 12:59:46 -06:00
Neil Alexander
366d2af1d3 Fix first queued packet on session pcreation 2018-02-15 18:02:08 +00:00
Neil Alexander
1c59338f01 Fix checksums and packet buffers, sends ICMPv6 Packet Too Big messages successfully now 2018-02-15 13:38:54 +00:00
Neil Alexander
37e4492b86 Send ICMPv6 response to packets larger than session MTU (WIP: checksum wrong?) 2018-02-14 22:59:24 +00:00
Arceliar
a3a9696880
Merge pull request #14 from neilalexander/icmpv6
Replace ndp.go with icmpv6.go
2018-02-14 11:16:24 -06:00
Arceliar
f6bdbda5c3
Merge pull request #13 from neilalexander/exchangemtu
Include endpoint MTU in session pings
2018-02-14 11:16:09 -06:00
Neil Alexander
844212e95b Highlight packets that exceed the agreed session MTU 2018-02-14 14:08:40 +00:00
Neil Alexander
9fb45d77fc Add "IfMTU" configuration option to allow selecting TUN/TAP MTU 2018-02-14 12:53:32 +00:00
Neil Alexander
34b264067e Run gofmt -s -w . 2018-02-14 11:46:10 +00:00
Neil Alexander
0bf43b758f Split create_icmpv6 into create_icmpv6_tun and create_icmpv6_tap 2018-02-14 11:39:55 +00:00
Neil Alexander
d78e0f7067 Improve icmpv6.go
- Now doesn't use unsafe
- Much cleaner
- Doesn't run in a goroutine perpetually
- Has a function to create ICMPv6 packets
2018-02-14 11:23:46 +00:00
Neil Alexander
6571a8c300 Don't use channels for ICMPv6 packets 2018-02-12 20:00:55 +00:00
Neil Alexander
fac4bf796e Add some error handling and other fixes to icmpv6.go 2018-02-12 19:40:13 +00:00
Neil Alexander
be0d6feeba Remove ndp.go and add icmpv6.go 2018-02-12 18:19:31 +00:00
Neil Alexander
7a0b48ffb3 Clean up session.go 2018-02-12 00:01:15 +00:00
Neil Alexander
11a7c5c458 Exchange MTU on wire 2018-02-11 23:58:30 +00:00