4
0
mirror of https://github.com/cwinfo/yggdrasil-go.git synced 2025-06-16 00:56:09 +00:00
Commit Graph

757 Commits

Author SHA1 Message Date
fe772dd38e switch bugfixes 2018-12-05 18:22:39 -06:00
09228554cb Merge pull request #223 from neilalexander/reusemulticast
Try to SO_REUSEPORT on multicast socket
2018-12-05 18:15:21 -06:00
ae48a1721e Try to SO_REUSEADDR on Windows 2018-12-05 23:10:50 +00:00
eae8f9a666 Try to SO_REUSEPORT on UNIX platforms 2018-12-05 22:39:04 +00:00
3d4b49b693 reset the switch speed info for a peer whenever it changes coords, instead of only if they're a parent and change coords. Also, make sure packets in the sim preserve order when sending, to avoid races when testing 2018-12-03 19:21:23 -06:00
684632eb3d Merge pull request #215 from Arceliar/switch
Latency-based parent selection for the switch
2018-12-02 17:26:26 -06:00
5a89a869be Set queueTotalMaxSize before switch worker starts 2018-12-02 23:24:54 +00:00
b5f4637b5c Enforce min 4MB switch queue total size 2018-12-02 23:20:11 +00:00
319457ae27 Update comment for MaxTotalQueueSize 2018-12-02 23:03:10 +00:00
86da073226 Add SwitchOptions and MaxTotalQueueSize 2018-12-02 22:49:27 +00:00
dcfe55dae8 store 'faster' relationships between all pairs of peers, to make fallback easier when a parent goes offline 2018-12-02 16:36:25 -06:00
38093219fd dimensionless way to track how often nodes are faster than the current parent 2018-12-02 14:46:58 -06:00
b3e2b8e6a5 Update admin.go
Replace `nil` with `[]string{}` for `list`'s argument list.
2018-11-26 19:15:27 -06:00
099fee9cae Rename destPubKey to box_pub_key in addRoute etc 2018-11-26 17:58:54 +00:00
315aadae06 Rename help to list 2018-11-26 17:51:30 +00:00
8239989c36 Send box_pub_key with getSessions, getDHT, getSwitchPeers and getPeers 2018-11-26 17:38:02 +00:00
5b10af7399 Rename key to box_pub_key in admin socket for consistency 2018-11-26 17:34:26 +00:00
d8d1e63c36 fix infinite loop from interaction between dht.isImportant and dht.insert 2018-11-25 20:33:33 -06:00
0ec6207e05 better response format and yggdrasilctl printing 2018-11-25 18:25:31 -06:00
a34ca40594 use a buffered channel to avoid races, and run gofmt 2018-11-25 17:59:36 -06:00
7954fa3c33 store one callback instead of many, needed to prevent search failures if there are multiple outstanding packets 2018-11-25 17:08:45 -06:00
9937a6102e add callbacks to maintenance map cleanup 2018-11-25 16:29:47 -06:00
12e635f946 adjust dhtPing response so 'nodes' defaults to an empty list instead of null 2018-11-25 16:16:06 -06:00
d520a8a1d5 refactor dht code to call arbitrary callbacks instead of only searches.checkDHTRes, and add admin API fuction to dhtPing a node (with an optional target NodeID) 2018-11-25 16:10:32 -06:00
e17efb6e91 don't penalize dht timeouts a second time 2018-11-25 13:21:13 -06:00
9046dbde4f remove sigManager, it seems safer to just burn the CPU than to store a map of strings of potentially arbitrary length 2018-11-25 13:06:54 -06:00
4e156bd4f7 better cleanup of maps 2018-11-25 12:25:38 -06:00
8d6beebac4 clean up old requests during dht maintenance 2018-11-24 20:04:14 -06:00
5a7c2b250c Merge pull request #209 from Arceliar/switch-tune
Adjust switch parent selection behavior
2018-11-24 23:21:45 +00:00
6d0e40045a cleanup/fixes from go vet 2018-11-22 21:41:16 -06:00
4870a2e149 removeSourceSubnet and removeRoute via the admin api 2018-11-22 21:30:56 -06:00
5953027411 switch from []byte to boxPubKey in ckr code, and start adding admin functions for existing code (yggdrasilctl.go still needs pretty printing support for the responses to the new get functions) 2018-11-21 00:10:20 -06:00
5fa23b1e38 move router.recvPacket calls into the main router goroutine, to make the ckr checks threadsafe 2018-11-20 22:04:18 -06:00
e9cff0506c comment the switch a little better and limit how much uptime can affect which peer is used as a parent 2018-11-19 21:30:52 -06:00
ef6cece720 fix sim and tune dht to bootstrap a little faster 2018-11-16 19:32:12 -06:00
fc5a5830aa Merge pull request #203 from Arceliar/chord
Chord
2018-11-14 20:13:42 +00:00
8cf8b0ec41 fix bug in recvPacket for packets coming from a subnet 2018-11-11 00:00:47 -06:00
1b1b776097 fix crash when starting in tun mode 2018-11-10 22:39:15 -06:00
6fab0e9507 Fix CKR (IPv4/IPv6) in TAP mode so frames sent to node MAC, base MAC/LL from node IPv6 address 2018-11-10 18:33:52 +00:00
adc32fe92f Track further neighbor state, don't send more NDPs than needed 2018-11-10 17:32:03 +00:00
d50e1bc803 More complete NDP implementation for TAP mode, which tracks individual MAC addresses for neighbors 2018-11-10 15:46:10 +00:00
15d5b3f82c comments and minor cleanup 2018-11-09 23:02:38 -06:00
685b565512 Check IP header lengths correctly per protocol 2018-11-07 10:29:08 +00:00
9542bfa902 Check the session perm pub key against the CKR key 2018-11-07 10:16:46 +00:00
fbfae473d4 Use full node ID for CKR routes instead of truncated node IDs from the address/subnet 2018-11-07 10:04:31 +00:00
39dab53ac7 Update comments in configuration and some godoc descriptions 2018-11-06 22:57:53 +00:00
a3a53f92c3 Reinstate length/bounds check in tun.go 2018-11-06 22:35:28 +00:00
0240375417 IPv4 CKR support in router 2018-11-06 20:49:19 +00:00
424faa1c51 Support IPv4 in ckr.go 2018-11-06 20:04:49 +00:00
cb7a5f17d9 Check destination address upon receive in router 2018-11-06 19:23:20 +00:00