Commit Graph

1531 Commits

Author SHA1 Message Date
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 be35675d0f.
2019-09-18 20:26:06 +01:00
Neil Alexander
d44a7faa04
semver: Don't return failure codes when git history is not present 2019-09-18 20:09:53 +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
94cf2854a9
Fix panic where slice goes out of bounds because iface.Read returns less than zero (which might happen when the TUN/TAP interface is closed) 2019-09-18 19:48:53 +01:00
Neil Alexander
368f499f1d
Update apt before trying to pull in RPM dependencies 2019-09-18 19:48:35 +01:00
Neil Alexander
ae0b2672ff
Fix #539 2019-09-18 19:48:16 +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
Neil Alexander
f4e326f5dd
Merge pull request #544 from wfleurant/readme-url-platforms
README: update platforms link
2019-09-11 14:23:42 +01:00
William Fleurant
8ca1187451 README: update platforms link 2019-09-11 06:52:03 -04: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
1b72a3f3d5
Merge pull request #537 from Arceliar/phony
update phony dependency
2019-09-06 22:47:59 -05:00
Arceliar
eec055313d update phony dependency 2019-09-06 22:20:36 -05:00
Neil Alexander
9da0c40239
Merge pull request #534 from Arceliar/bugfix
Fix race between router and dial code
2019-09-04 12:21:42 +01: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
174ebceaac
Fix hjson-go import in go.mod/go.sum 2019-09-01 21:32:40 +01:00
Arceliar
f72546c85d
Merge pull request #527 from Arceliar/bugfix
Bugfix
2019-09-01 14:15:00 -05: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
730fd08954
Merge pull request #526 from Arceliar/cleanup
Cleanup and possible bugfixes
2019-09-01 13:45:17 -05:00
Arceliar
8d2c31d39c add some artifical delay to windows netsh commands, since it seems like maybe they don't take effect immediately, and this was leading to races when setting MTU 2019-09-01 13:20:48 -05:00
Arceliar
c53831696b make tun stop check that iface is not nil, in case it wasn't set for some reason (windows bugs) 2019-09-01 13:06:25 -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
Neil Alexander
1496b6af3b
Merge pull request #525 from Arceliar/memory
Memory
2019-09-01 17:55:24 +01:00
Neil Alexander
e0ea845cdc
Update build 2019-09-01 17:50:15 +01:00
Arceliar
3a493fe894 gc more often on mobile 2019-09-01 11:08:25 -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
0806f3e6ea upgrade phony 2019-08-31 16:49:13 -05:00
Arceliar
a64f7320d8 update phony, add mobile versions of util bytes functions that don't try to store anything 2019-08-31 16:27:36 -05:00
Arceliar
5c0f79c4ed
Merge pull request #519 from Arceliar/actors
Actors
2019-08-31 12:02:50 -05:00
Arceliar
08f69de1e2 another phony update 2019-08-31 00:04:35 -05:00
Arceliar
32633011ef upgrade phony dependency 2019-08-30 22:10:34 -05:00
Arceliar
9e4d4f33ba upgrade to latest phony 2019-08-29 23:30:39 -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
Neil Alexander
5d7d84f827
Remove router.doAdmin and switchTable.doAdmin 2019-08-28 12:17:19 +01:00
Arceliar
a8b323acdd have an actor manage the crypto worker pool instead of each session trying to use it directly, this should result in a fairer round-robin behavior in cases where crypto congestion is the bottleneck 2019-08-27 20:01:37 -05: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
f432875d87 Merge branch 'actors-linky' into actors 2019-08-26 00:38:29 -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
e5b88c0da3 update switch 2019-08-25 23:07:56 -05:00