Arceliar
|
b2922189b8
|
fix deadlock from use of phony.Block by actors when ckr is enabled
|
2019-10-03 18:44:47 -05:00 |
|
Arceliar
|
a87581b0fa
|
Merge pull request #556 from Arceliar/switch
Switch hack
|
2019-09-25 17:58:01 -05:00 |
|
Arceliar
|
ac58c3586e
|
cleanup/comments
|
2019-09-25 17:53:25 -05:00 |
|
Neil Alexander
|
d27891aaf6
|
Merge pull request #528 from yggdrasil-network/documentation
Documentation updates
|
2019-09-25 17:09:09 +01: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
|
691192ff5a
|
weird scheduler hack, seems to tend to make things more stable without actually locking streams to any particular link
|
2019-09-21 14:33:45 -05:00 |
|
Arceliar
|
87658f83e9
|
Revert "force things to buffer in the switch if the best link is currently busy. note that other links can end up sending if they become non-idle for other reasons. this is a temporary workaround to packet reordering, until we can figure out a better solution"
This reverts commit 80ba24d51255c3751e2b25aceee52b20d59ff746.
|
2019-09-20 23:09:12 -05:00 |
|
Arceliar
|
f9163a56b6
|
fix race between listener accepting and shutting down
|
2019-09-19 19:50:45 -05:00 |
|
Arceliar
|
eeb34ce4e4
|
modify TcpListener
|
2019-09-19 19:45:17 -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
|
681e9afc79
|
Merge develop into bugfixes
|
2019-09-19 09:05:56 +01:00 |
|
Neil Alexander
|
7b1678a11d
|
Goroutines in _addPeerLoop from bugfixes
|
2019-09-19 09:04:25 +01:00 |
|
Neil Alexander
|
5a382e7e0b
|
Cherrypick fixes for _addPeerLoop memory leak for now
|
2019-09-19 08:55:55 +01:00 |
|
Arceliar
|
995d67cca8
|
fix leak in _addPeerLoop
|
2019-09-18 18:46:03 -05:00 |
|
Arceliar
|
92d9274f3f
|
resolve conflicts
|
2019-09-18 18:40:01 -05:00 |
|
Arceliar
|
2d64a6380a
|
misc other fixes
|
2019-09-18 18:33:51 -05:00 |
|
Neil Alexander
|
909e4e29a8
|
Don't spawn goroutines for addPeerLoop, TCP connect timeout of 5 seconds for now
|
2019-09-18 23:44:28 +01:00 |
|
Neil Alexander
|
64570a8d3e
|
Merge pull request #542 from Arceliar/switch
Switch
|
2019-09-18 20:26:48 +01:00 |
|
Neil Alexander
|
0a12e4b1c1
|
Revert "Catch a nil pointer when sending a session packet to a conn, this shouldn't happen but it's caused multiple crashes in conn.recvMsg"
This reverts commit be35675d0f01aa5e22571f9c71ed36ba4a87b8ba.
|
2019-09-18 20:26:06 +01:00 |
|
Neil Alexander
|
ddaaa865cb
|
Be more verbose when a peer or listener is badly formatted
|
2019-09-18 19:58:41 +01:00 |
|
Neil Alexander
|
ae0b2672ff
|
Fix #539
|
2019-09-18 19:48:16 +01:00 |
|
Neil Alexander
|
b959f53fee
|
Shut down listeners when stopping
|
2019-09-18 16:32:22 +01:00 |
|
Neil Alexander
|
b0df9e2f31
|
Fix race when adding peers
|
2019-09-18 16:15:33 +01:00 |
|
Neil Alexander
|
c78a4cb28f
|
Only stop timers if they are running
|
2019-09-18 15:34:26 +01:00 |
|
Neil Alexander
|
00a972b74e
|
Disconnect peers when stopping, stop modules before core
|
2019-09-18 15:22:17 +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
|
200b3623b2
|
Fix #539
|
2019-09-18 14:32:28 +01:00 |
|
Neil Alexander
|
e9bacda0b3
|
Catch a nil pointer when sending a session packet to a conn, this shouldn't happen but it's caused multiple crashes in conn.recvMsg
|
2019-09-18 14:07:26 +01:00 |
|
Neil Alexander
|
40204caab6
|
Try to fix race condition in sessions.reset
|
2019-09-18 14:03:31 +01:00 |
|
Neil Alexander
|
be35675d0f
|
Catch a nil pointer when sending a session packet to a conn, this shouldn't happen but it's caused multiple crashes in conn.recvMsg
|
2019-09-18 13:37:01 +01:00 |
|
Arceliar
|
80ba24d512
|
force things to buffer in the switch if the best link is currently busy. note that other links can end up sending if they become non-idle for other reasons. this is a temporary workaround to packet reordering, until we can figure out a better solution
|
2019-09-17 19:42:07 -05:00 |
|
Arceliar
|
0141180279
|
cleanup
|
2019-09-09 19:25:10 -05:00 |
|
Arceliar
|
10a828af2c
|
when forwarding traffic, break distance ties by favoring the link that sent the most recent switch update the fastest
|
2019-09-09 19:20:46 -05:00 |
|
Arceliar
|
2426a87ccc
|
really finish initializing the session before returning it / giving up control of the router, in the Conn.search function used by Dial
|
2019-09-03 19:03:12 -05:00 |
|
Neil Alexander
|
903a8921fc
|
Update api.go godoc
|
2019-09-01 23:47:47 +01:00 |
|
Neil Alexander
|
935324efe1
|
Update conn.go godoc
|
2019-09-01 23:33:51 +01:00 |
|
Neil Alexander
|
9e8e1c5a41
|
Documentation updates
|
2019-09-01 23:10:46 +01:00 |
|
Neil Alexander
|
01517e5dc3
|
Create doc.go for godoc preamble
|
2019-09-01 22:43:27 +01:00 |
|
Arceliar
|
8c52ccadf9
|
make dial fail if a session to the same node already exists, fixes race between simultaneous connections to a node's 200 address and one of its 300 addresses, should also fix races between a search and an accepted listen
|
2019-09-01 14:07:00 -05:00 |
|
Arceliar
|
d08c2eb237
|
stop exporting ReadNoCopy and WriteNoCopy, since we use the actor functions / callbacks and everything else should use Read and Write instead...
|
2019-09-01 13:04:10 -05:00 |
|
Arceliar
|
cabdc27a54
|
change how nonce is tracked, so we allow packets if we've recently received a highest nonce ever, but don't bother tracking all received nonce values, this means duplicate packets are possible but only for a small window of time (and significantly reduces memory usage per session)
|
2019-08-31 17:39:05 -05:00 |
|
Arceliar
|
7649ea0f9f
|
remove sessionInfo.doFunc, have the api just use phony.Block instead
|
2019-08-29 21:59:28 -05:00 |
|
Neil Alexander
|
1f658cce76
|
Add Core actor
|
2019-08-28 19:53:52 +01:00 |
|
Neil Alexander
|
aa0770546e
|
Move responsibility for configuring max queue size into switch
|
2019-08-28 19:39:23 +01:00 |
|
Neil Alexander
|
fc9a1c6c31
|
Simplify reconfiguration
|
2019-08-28 19:31:04 +01:00 |
|
Neil Alexander
|
764f9c8e11
|
Remove legacy debug functions
|
2019-08-28 17:24:41 +01:00 |
|
Neil Alexander
|
881d0a1ada
|
Fix DEBUG_getDHTSize
|
2019-08-28 12:46:49 +01:00 |
|
Neil Alexander
|
e553f3e013
|
Reconfigure functions now ran by actors
|
2019-08-28 12:46:12 +01:00 |
|
Neil Alexander
|
607c906820
|
Pointer receivers for phony.Block
|
2019-08-28 12:26:44 +01:00 |
|