Arceliar
|
426d157025
|
make sure we don't replace an existing listener
|
2019-03-08 18:51:07 -06:00 |
|
Neil Alexander
|
917ca6c1c5
|
Make changes based on review comments
|
2019-03-08 10:26:46 +00:00 |
|
Arceliar
|
02b1892cc5
|
try to switch parents if a parent link is blocked
|
2019-03-07 21:36:12 -06:00 |
|
Neil Alexander
|
b8cabf3212
|
Support removing Listen interfaces at runtime properly
|
2019-03-06 16:40:48 +00:00 |
|
Neil Alexander
|
531d9f39ca
|
Fix multicast bug, set static multicast interval 15 seconds
|
2019-03-06 12:15:40 +00:00 |
|
Neil Alexander
|
c0d5a8c0bd
|
Clean up old listeners first
|
2019-03-06 12:09:57 +00:00 |
|
Neil Alexander
|
f4e17b9a9f
|
Properly handle multicast interfaces going up and down
|
2019-03-06 12:07:33 +00:00 |
|
Neil Alexander
|
de2aff2758
|
Refactor multicast so that it creates a new TCP listener for each interface with LL addresses (so that it will not break if Listen is not set with a wildcard address)
|
2019-03-06 11:06:13 +00:00 |
|
Neil Alexander
|
19267beb9e
|
Merge branch 'develop' into multilink
|
2019-03-05 22:07:20 +00:00 |
|
Neil Alexander
|
236692bdc4
|
Add getTunnelRouting and setTunnelRouting (fixes #362)
|
2019-03-05 17:55:46 +00:00 |
|
Neil Alexander
|
a17d6d3a68
|
Fix getTunTap (fixes #363)
|
2019-03-05 17:37:26 +00:00 |
|
Neil Alexander
|
2ef823e69c
|
Fix deadlock when reconfiguring multicast
|
2019-03-04 23:16:46 +00:00 |
|
Neil Alexander
|
88925d3e06
|
Centralise call/listen functions in link.go
|
2019-03-04 22:45:35 +00:00 |
|
Neil Alexander
|
61774aed3b
|
Show proto in admin socket, link linkInfo from peer, other fixes
|
2019-03-04 20:33:08 +00:00 |
|
Neil Alexander
|
2b8648e2b3
|
Fix debug builds
|
2019-03-04 19:04:09 +00:00 |
|
Neil Alexander
|
0be0b078cb
|
Remove unused types in link.go
|
2019-03-04 19:00:06 +00:00 |
|
Neil Alexander
|
eeede4e6d0
|
Fix some obvious concurrency bugs
|
2019-03-04 18:47:40 +00:00 |
|
Neil Alexander
|
82bb95b77f
|
Some more (inelegant) multiple listener code plus some reconfigure support
|
2019-03-04 18:41:32 +00:00 |
|
Neil Alexander
|
be8db0c120
|
Support multiple TCP listeners
|
2019-03-04 17:52:57 +00:00 |
|
Neil Alexander
|
ae79246a66
|
Move TCP under link.go
|
2019-03-04 17:09:48 +00:00 |
|
Neil Alexander
|
918ce5a3fc
|
Add a timeout on the UNIX admin socket check
|
2019-03-03 19:32:36 +00:00 |
|
Neil Alexander
|
c940bae9e3
|
Update output
|
2019-03-03 14:15:01 +00:00 |
|
Neil Alexander
|
8f66d5b8dd
|
Try to clean up UNIX admin socket
|
2019-03-03 14:09:54 +00:00 |
|
Neil Alexander
|
3c733eadb4
|
Merge pull request #350 from neilalexander/awdl
Wake AWDL for multicast peering on macOS
|
2019-03-02 10:33:47 +00:00 |
|
Neil Alexander
|
12e088ab9e
|
Remove unnecessary Cgo line
|
2019-03-01 19:34:53 +00:00 |
|
Neil Alexander
|
e99903bf72
|
Wake up AWDL on Darwin if awdl0 is an enabled multicast interface
|
2019-03-01 19:26:50 +00:00 |
|
Neil Alexander
|
a6ae159329
|
Give some more feedback that a configuration reload actually happens
|
2019-03-01 18:26:52 +00:00 |
|
Arceliar
|
304f22dc1d
|
re-enable session workers in a way that doesn't block and drops packets before decrypting if necessary
|
2019-02-28 20:05:21 -06:00 |
|
Arceliar
|
06df791efc
|
buffer packets moving from the switch to the router, allow them front drop if there's too many
|
2019-02-28 19:08:56 -06:00 |
|
Arceliar
|
371b5ca6a2
|
Change log message about AllowedEncryptionPublicKeys from Debug to Warn
|
2019-02-28 18:49:34 -06:00 |
|
Arceliar
|
2569242050
|
fixes to linkInterface.handler()
|
2019-02-26 21:07:56 -06:00 |
|
Arceliar
|
def4fb3587
|
fix timeout and improve logging on connection close
|
2019-02-24 14:48:16 -06:00 |
|
Arceliar
|
654407dc6d
|
close long-dead connections in link.go instead of in switch.go, this is important in case a connection opens but never bothers to send even one switch message
|
2019-02-24 13:24:55 -06:00 |
|
Arceliar
|
bb3edd5e55
|
add the relevant error to the default logging when a connection is closed
|
2019-02-24 12:59:30 -06:00 |
|
Arceliar
|
042adb0516
|
make sure the only place traffic is ever dropped is in the switch. this currently disables the dedicated crypto workers
|
2019-02-23 00:07:00 -06:00 |
|
Arceliar
|
e31962de0f
|
Merge branch 'develop' into switch
|
2019-02-16 16:26:20 -06:00 |
|
Arceliar
|
6f0bbbfb98
|
Debug some issues with the state machine that tracks idle connections in link.go
|
2019-02-15 19:35:10 -06:00 |
|
Arceliar
|
3c9c8672c9
|
Merge branch 'develop' of https://github.com/yggdrasil-network/yggdrasil-go into switch
|
2019-02-15 16:28:48 -06:00 |
|
Neil Alexander
|
0ca64b0abe
|
Remove ReadTimeout configuration option
|
2019-02-10 12:13:49 +00:00 |
|
Arceliar
|
21cecf4630
|
consistently prioritize which peer to forward to instead of letting it be partly random
|
2019-02-09 17:44:25 -06:00 |
|
Arceliar
|
ad43558fbb
|
fix bug in switch time
|
2019-02-09 15:30:17 -06:00 |
|
Arceliar
|
74ac535d55
|
slightly faster switch logic, should be easier to have a useful tie-breaker for peers that are equally close to the destination via the tree metric
|
2019-02-08 19:46:11 -06:00 |
|
Arceliar
|
41f49faaa0
|
get code running in the netns test again, remove unnecessary allocations that were found in profiling
|
2019-02-05 17:39:59 -06:00 |
|
Arceliar
|
2f8dd5dde0
|
remove race condition in setting peer.close by requiring it as an argument to newPeer
|
2019-02-03 15:50:25 -06:00 |
|
Arceliar
|
5ddf84f329
|
remove peers completely after a long switch timeout, this could use some improvement later
|
2019-02-03 15:22:14 -06:00 |
|
Arceliar
|
ebbe5f67ad
|
don't time out a link unless we were expecting an ack and didn't get one
|
2019-02-02 22:41:51 -06:00 |
|
Arceliar
|
b44a0f29f3
|
send an ack if we receive a packet and don't have any return traffic, keeping a legacy 4-second keep-alive in case there's no traffic at all to send (to be removed later, after nodes have upgraded), ideally we should either remove ReadTimeout or use it for the switch idle timeout instead
|
2019-02-02 22:18:55 -06:00 |
|
Neil Alexander
|
43f798e82e
|
Check link-local in tcp.go, track direction in link.go, fix compile error for mobile.go
|
2019-02-01 00:02:17 +00:00 |
|
Neil Alexander
|
ec5f7d9879
|
Enforce AllowedEncryptionPublicKeys for all peers inc. link-local
|
2019-01-31 23:47:20 +00:00 |
|
Neil Alexander
|
432f93de89
|
Check AllowedEncryptionPublicKeys
|
2019-01-31 23:29:18 +00:00 |
|
Neil Alexander
|
e36f88c75f
|
Info logging when link connects/disconnects
|
2019-01-31 23:18:02 +00:00 |
|
Arceliar
|
05962b2cbd
|
disable idle nodes in the switch instead of killing the connection entirely. this implementation is ugly, but i think it maybe works
|
2019-01-30 20:58:23 -06:00 |
|
Neil Alexander
|
2466c54a71
|
Update debug lines in link.go
|
2019-01-27 20:56:10 +00:00 |
|
Neil Alexander
|
1a3a67f205
|
Merge remote-tracking branch 'origin/develop' into link
Fix merge conflicts from flexible logging branch
|
2019-01-27 20:54:21 +00:00 |
|
Neil Alexander
|
22d2e0e4fe
|
Fix debug builds
|
2019-01-27 13:33:32 +00:00 |
|
Neil Alexander
|
0838928668
|
Add support for flexible logging levels
|
2019-01-27 13:31:43 +00:00 |
|
Arceliar
|
6ef0e47632
|
fix merge conflict
|
2019-01-26 14:27:37 -06:00 |
|
Arceliar
|
bca69df1f6
|
possible workaround to a deadlock
|
2019-01-26 14:07:18 -06:00 |
|
Neil Alexander
|
705b914d00
|
Move awdl into link
|
2019-01-23 19:42:33 +00:00 |
|
Neil Alexander
|
188a9e439d
|
Bug fixes for AWDL
|
2019-01-23 18:16:31 +00:00 |
|
Neil Alexander
|
2944be4faf
|
Further tweaks
|
2019-01-23 17:05:16 +00:00 |
|
Neil Alexander
|
81545fd9bf
|
Clean up
|
2019-01-23 15:16:22 +00:00 |
|
Neil Alexander
|
9c6cf50684
|
Adapt AWDL to link
|
2019-01-23 15:08:19 +00:00 |
|
Arceliar
|
7b2460662d
|
close the connection before blocking a duplicate link
|
2019-01-22 21:53:39 -06:00 |
|
Arceliar
|
f936151f2d
|
correctly clean up various things
|
2019-01-22 21:48:43 -06:00 |
|
Arceliar
|
eb8951081d
|
fix duplicate connection bug, I think this is also in develop
|
2019-01-22 21:23:57 -06:00 |
|
Arceliar
|
12c0e019dc
|
only create one interface, but still opens duplicate connections before it catches this, so more work is needed
|
2019-01-22 21:16:41 -06:00 |
|
Arceliar
|
f95663e923
|
actually finish initializing peers
|
2019-01-22 18:24:15 -06:00 |
|
Arceliar
|
137212d8cf
|
work in progress, establishes TCP connections and gets through metadata handshake using the link code, but doesn't seem to send traffic yet (no switch peers are created)
|
2019-01-21 23:08:50 -06:00 |
|
Arceliar
|
5a4d6481dd
|
Work in progress, add a linkInterfaceMsgIO interface type and make stream implement it, this will be used by link
|
2019-01-21 21:27:52 -06:00 |
|
Neil Alexander
|
ad6ec6ab11
|
Merge pull request #315 from neilalexander/flowlabel
Update switch flow separation for IPv4
|
2019-01-21 23:22:40 +00:00 |
|
Neil Alexander
|
62d4d62a77
|
Update comments
|
2019-01-21 16:24:29 +00:00 |
|
Neil Alexander
|
d3f67ad017
|
Improve command flow
|
2019-01-21 16:22:49 +00:00 |
|
Neil Alexander
|
cdfb930703
|
Update switch flow separation for IPv4
|
2019-01-21 12:27:29 +00:00 |
|
Arceliar
|
c8e1be0f73
|
link/stream refactoring bugfixes and gofmt
|
2019-01-19 16:37:45 -06:00 |
|
Neil Alexander
|
41a410f2a1
|
Initialise awdl.go from link.go, remove deadlock between awdl.create and link.create, other bits and pieces
|
2019-01-19 12:19:24 +00:00 |
|
Neil Alexander
|
c51a3340b1
|
Update awdl.go to use new link stuff (untested)
|
2019-01-19 00:42:53 +00:00 |
|
Neil Alexander
|
4ae36dfffe
|
Merge branch 'ios' into link
|
2019-01-19 00:23:38 +00:00 |
|
Neil Alexander
|
6fe3b01e90
|
Rename awdl.go to link.go, add stream.go, update tcp.go
|
2019-01-19 00:14:10 +00:00 |
|
Neil Alexander
|
30df632eb2
|
Merge branch 'develop' into ios
|
2019-01-17 23:15:00 +00:00 |
|
Neil Alexander
|
c839012580
|
Fix source address selection
|
2019-01-17 23:06:59 +00:00 |
|
Neil Alexander
|
9d5085492e
|
Handle session firewall using central config
|
2019-01-16 20:38:51 +00:00 |
|
Neil Alexander
|
fdf300a1ff
|
Handle AllowedEncryptionPublicKeys internally
|
2019-01-16 20:26:39 +00:00 |
|
Neil Alexander
|
68eb684f6d
|
Fix mobile.go now that multicast interfaces are handled internally
|
2019-01-16 19:27:44 +00:00 |
|
Neil Alexander
|
8baf593b62
|
Update source address selection when sintf specified
|
2019-01-16 14:52:27 +00:00 |
|
Neil Alexander
|
c85dbaea95
|
Fix missing nodeinfo.init
|
2019-01-16 13:23:26 +00:00 |
|
Neil Alexander
|
4fba558638
|
Fix concurrent map write in tcp.go
|
2019-01-16 13:20:12 +00:00 |
|
Neil Alexander
|
53be1b02f3
|
Check if accepting socket produced an error
|
2019-01-15 08:53:57 +00:00 |
|
Neil Alexander
|
2cd373fc1e
|
Remove unnecessary selects
|
2019-01-15 08:51:19 +00:00 |
|
Neil Alexander
|
39567bed83
|
Address some comments
|
2019-01-15 08:44:33 +00:00 |
|
Neil Alexander
|
3bf53796a7
|
Merge branch 'develop' into nodeconfig
|
2019-01-15 08:37:10 +00:00 |
|
Arceliar
|
248edf8319
|
Merge pull request #304 from deavmi/develop
Spelling fixes
|
2019-01-14 21:27:15 -06:00 |
|
Neil Alexander
|
d9ddf30faf
|
Fix debug builds
|
2019-01-14 19:29:22 +00:00 |
|
Neil Alexander
|
f6b663c257
|
Make multicasting use config instead of ifceExpr in Core
|
2019-01-14 19:27:13 +00:00 |
|
Neil Alexander
|
9e486ed4fe
|
Move nodeinfo into router
|
2019-01-14 19:05:16 +00:00 |
|
Neil Alexander
|
5cde3b5efc
|
Update nodeinfo in router reconfigure
|
2019-01-14 18:51:49 +00:00 |
|
Neil Alexander
|
9e186bdd67
|
Remove mutexes from CKR and use router goroutine/doAdmin for update config
|
2019-01-14 18:34:15 +00:00 |
|
Neil Alexander
|
51026d762e
|
Make session firewall thread-safe for config updates
|
2019-01-14 18:24:35 +00:00 |
|
Neil Alexander
|
bd04124e43
|
Reconfigure support for crypto-key routing
|
2019-01-14 18:06:41 +00:00 |
|
Neil Alexander
|
28072c9fe2
|
Make CKR thread-safe
|
2019-01-14 17:41:08 +00:00 |
|