5
0
mirror of https://github.com/cwinfo/yggdrasil-go.git synced 2024-12-23 13:25:39 +00:00
Commit Graph

387 Commits

Author SHA1 Message Date
Arceliar
d8d1e63c36 fix infinite loop from interaction between dht.isImportant and dht.insert 2018-11-25 20:33:33 -06:00
Arceliar
0ec6207e05 better response format and yggdrasilctl printing 2018-11-25 18:25:31 -06:00
Arceliar
a34ca40594 use a buffered channel to avoid races, and run gofmt 2018-11-25 17:59:36 -06:00
Arceliar
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
Arceliar
9937a6102e add callbacks to maintenance map cleanup 2018-11-25 16:29:47 -06:00
Arceliar
12e635f946 adjust dhtPing response so 'nodes' defaults to an empty list instead of null 2018-11-25 16:16:06 -06:00
Arceliar
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
Arceliar
e17efb6e91 don't penalize dht timeouts a second time 2018-11-25 13:21:13 -06:00
Arceliar
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
Arceliar
4e156bd4f7 better cleanup of maps 2018-11-25 12:25:38 -06:00
Arceliar
8d6beebac4 clean up old requests during dht maintenance 2018-11-24 20:04:14 -06:00
Neil Alexander
5a7c2b250c
Merge pull request #209 from Arceliar/switch-tune
Adjust switch parent selection behavior
2018-11-24 23:21:45 +00:00
Arceliar
6d0e40045a cleanup/fixes from go vet 2018-11-22 21:41:16 -06:00
Arceliar
4870a2e149 removeSourceSubnet and removeRoute via the admin api 2018-11-22 21:30:56 -06:00
Arceliar
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
Arceliar
5fa23b1e38 move router.recvPacket calls into the main router goroutine, to make the ckr checks threadsafe 2018-11-20 22:04:18 -06:00
Arceliar
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
Arceliar
ef6cece720 fix sim and tune dht to bootstrap a little faster 2018-11-16 19:32:12 -06:00
Neil Alexander
fc5a5830aa
Merge pull request #203 from Arceliar/chord
Chord
2018-11-14 20:13:42 +00:00
Arceliar
8cf8b0ec41 fix bug in recvPacket for packets coming from a subnet 2018-11-11 00:00:47 -06:00
Arceliar
1b1b776097 fix crash when starting in tun mode 2018-11-10 22:39:15 -06:00
Neil Alexander
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
Neil Alexander
adc32fe92f
Track further neighbor state, don't send more NDPs than needed 2018-11-10 17:32:03 +00:00
Neil Alexander
d50e1bc803
More complete NDP implementation for TAP mode, which tracks individual MAC addresses for neighbors 2018-11-10 15:46:10 +00:00
Arceliar
15d5b3f82c comments and minor cleanup 2018-11-09 23:02:38 -06:00
Neil Alexander
685b565512
Check IP header lengths correctly per protocol 2018-11-07 10:29:08 +00:00
Neil Alexander
9542bfa902
Check the session perm pub key against the CKR key 2018-11-07 10:16:46 +00:00
Neil Alexander
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
Neil Alexander
39dab53ac7
Update comments in configuration and some godoc descriptions 2018-11-06 22:57:53 +00:00
Neil Alexander
a3a53f92c3
Reinstate length/bounds check in tun.go 2018-11-06 22:35:28 +00:00
Neil Alexander
0240375417
IPv4 CKR support in router 2018-11-06 20:49:19 +00:00
Neil Alexander
424faa1c51
Support IPv4 in ckr.go 2018-11-06 20:04:49 +00:00
Neil Alexander
cb7a5f17d9
Check destination address upon receive in router 2018-11-06 19:23:20 +00:00
Neil Alexander
2f75075da3
Fix Yggdrasil subnet routing 2018-11-06 14:28:57 +00:00
Neil Alexander
bc62af7f7d
Enable CKR properly from config 2018-11-06 12:32:16 +00:00
Neil Alexander
bc578f571c
Some output at startup 2018-11-06 11:56:32 +00:00
Neil Alexander
f0947223bb
Only validate CKR routes if CKR enabled 2018-11-06 11:11:57 +00:00
Neil Alexander
19e6aaf9f5
Remove sourceSubnet from router 2018-11-06 00:06:37 +00:00
Neil Alexander
e3d4aed44a
Configure IPv6Sources 2018-11-06 00:05:01 +00:00
Neil Alexander
8c2327a2bf
Add source addresses option and more intelligent source checking 2018-11-05 23:59:41 +00:00
Neil Alexander
cfdbc481a5
Modify source address check for CKR 2018-11-05 23:22:45 +00:00
Neil Alexander
7218b5a56c
Don't look up public keys for Yggdrasil native addresses 2018-11-05 23:12:26 +00:00
Neil Alexander
c7f2427de1
Check CKR routes when receiving packets in router 2018-11-05 22:58:58 +00:00
Neil Alexander
87b0f5fe24
Use CKR in router when sending packets 2018-11-05 22:39:30 +00:00
Neil Alexander
295e9c9a10
Cache crypto-key routes (until routing table changes) 2018-11-05 17:31:10 +00:00
Neil Alexander
ec751e8cc7
Don't allow Yggdrasil ranges as crypto-key routes 2018-11-05 17:03:58 +00:00
Neil Alexander
52206dc381
Add initial crypto-key routing handlers 2018-11-05 16:40:47 +00:00
Arceliar
a008b42f99 cleanup and some bugfixes, cache important dht nodes until something gets added/removed 2018-10-29 22:24:18 -05:00
Arceliar
671c7f2a47 don't update recv time for known nodes that ping us or known peers 2018-10-28 15:04:44 -05:00
Arceliar
c0531627bc fix some chord dht bootstrapping bugs, no known cases where it now fails 2018-10-24 22:03:27 -05:00