Arceliar
|
3e07995518
|
it helps to actually set the flag...
|
2019-11-24 18:53:58 -06:00 |
|
Arceliar
|
27cc57dbbc
|
attempt to prevent incorrect idle notification in switch, needs testing
|
2019-11-24 18:24:17 -06:00 |
|
Neil Alexander
|
6a22e6c9de
|
Initial connection upgrade/TLS peering support
|
2019-10-23 17:26:35 +01:00 |
|
Arceliar
|
ac58c3586e
|
cleanup/comments
|
2019-09-25 17:53:25 -05:00 |
|
Arceliar
|
b9e74f34ec
|
replace the send-to-self with a timer and an arbitrary timeout; i don't really like this but it seems to work better (1 ms is fast by human standards but an eternity for a syscall or the scheduler, so i think that's reasonable)
|
2019-09-24 18:28:13 -05:00 |
|
Arceliar
|
8c64e6fa09
|
explicitly notify the switch when a link appears to be blocked in a send instead of assuming this is the case for all idle links. how we decide when it's really blocked still needs testing/optimizing
|
2019-09-24 18:01:35 -05:00 |
|
Arceliar
|
93e81867fd
|
have link.stop signal active links to close, have tcp.stop wait for all listeners and active connections to close
|
2019-09-19 19:15:59 -05:00 |
|
Neil Alexander
|
b959f53fee
|
Shut down listeners when stopping
|
2019-09-18 16:32:22 +01:00 |
|
Neil Alexander
|
846df4789a
|
Be more verbose when a peer or listener is badly formatted
|
2019-09-18 15:01:19 +01:00 |
|
Neil Alexander
|
fc9a1c6c31
|
Simplify reconfiguration
|
2019-08-28 19:31:04 +01:00 |
|
Neil Alexander
|
e553f3e013
|
Reconfigure functions now ran by actors
|
2019-08-28 12:46:12 +01:00 |
|
Arceliar
|
3845f81357
|
update to latest phony, adjust interface use accordingly
|
2019-08-27 19:43:54 -05:00 |
|
Arceliar
|
4d9c6342a7
|
more link updates
|
2019-08-26 18:37:38 -05:00 |
|
Arceliar
|
c97dd4ad28
|
fix dial bug
|
2019-08-26 00:38:14 -05:00 |
|
Arceliar
|
ab59129557
|
have the writer clean things up. note that their still seem to be bugs in the main linkInterface actor's state machine--links sometimes just die, presumably because they're dropped from the switch and never replaced
|
2019-08-25 23:24:18 -05:00 |
|
Arceliar
|
bd3eaefb72
|
more link migration
|
2019-08-25 22:55:17 -05:00 |
|
Arceliar
|
b5b179904b
|
ugly work-in-progress to migrate link to the actor model
|
2019-08-25 22:19:20 -05:00 |
|
Arceliar
|
502f2937a9
|
a couple race fixes and use timer.AfterFunc instead of sleeping goroutines or ticker in a few places
|
2019-08-25 17:00:02 -05:00 |
|
Arceliar
|
a3d4d8125b
|
make the main library reconfiguration more actor-friendly
|
2019-08-25 12:10:59 -05:00 |
|
Arceliar
|
aa30c6cc98
|
upgrade phony dependency and switch to its new interface
|
2019-08-25 10:36:09 -05:00 |
|
Arceliar
|
48bbdac9b3
|
add a helper actor to the link reader to make it play nicer with backpressure
|
2019-08-24 16:27:12 -05:00 |
|
Arceliar
|
99be6b037d
|
stop synchronizing message reads for now, not 100% safe but I don't have any better ideas
|
2019-08-24 16:13:34 -05:00 |
|
Arceliar
|
998c76fd8c
|
more switch migration
|
2019-08-24 15:22:46 -05:00 |
|
Arceliar
|
88161009e9
|
more peer migration
|
2019-08-24 12:55:49 -05:00 |
|
Arceliar
|
62337bcd64
|
allow links to send multiple packets at once, currently we still only bother to send 1 at a time from the switch level
|
2019-08-18 12:17:54 -05:00 |
|
Arceliar
|
46c5df1c23
|
when we abandon a link because we already have a connection to that peer, only wait for the connection to close if it's an *outgoing* link, otherwise incomming connection attempts can cause us to leak links
|
2019-08-13 18:49:49 -05:00 |
|
Neil Alexander
|
39baf7365c
|
Unexport/modify some interfaces to revive broken iOS/Android builds
|
2019-03-30 00:09:35 +00:00 |
|
Neil Alexander
|
dc3a05f13a
|
Correctly classify link-local addresses in the TCP handler, fix AllowedPublicEncryptionKeys warning
|
2019-03-12 16:03:02 +00:00 |
|
Neil Alexander
|
229de91a3a
|
Fix AllowedEncryptionPublicKeys so that it works in incoming connections and not outgoing ones
|
2019-03-12 15:01:27 +00:00 |
|
Arceliar
|
c7b4bfcef5
|
misc fixes
|
2019-03-09 18:08:26 -06:00 |
|
Arceliar
|
a0e6edd219
|
Merge pull request #360 from neilalexander/multilink
Support for multiple listeners
|
2019-03-08 18:56:47 -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
|
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
|
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
|
0be0b078cb
|
Remove unused types in link.go
|
2019-03-04 19:00:06 +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 |
|
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
|
6f0bbbfb98
|
Debug some issues with the state machine that tracks idle connections in link.go
|
2019-02-15 19:35:10 -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 |
|