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
								
							 
						 | 
						
							
							
							
							
								
							
							
								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 80ba24d512. 
							
						 | 
						
							2019-09-20 23:09:12 -05:00 | 
						
						
							
							
							
							
								
							
							
							
								
							
							
						 | 
					
				
					
						
							
								
								
									 
									Arceliar
								
							 
						 | 
						
							
							
							
							
								
							
							
								8003ea0f3e
								
							
						 | 
						
							
							
								
								use a separate multicast beacon interval per multicast interface
							
							
							
							
							
						 | 
						
							2019-09-20 17:42:42 -05:00 | 
						
						
							
							
							
							
								
							
							
							
								
							
							
						 | 
					
				
					
						
							
								
								
									 
									Neil Alexander
								
							 
						 | 
						
							
							
								
								
							
							
							
								
							
							
								1cd4b6e8dd
								
							
						 | 
						
							
							
								
								Increase multicast interval at startup from 1s to 15s
							
							
							
							
							
						 | 
						
							2019-09-20 10:08:41 +01: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 be35675d0f. 
							
						 | 
						
							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
								
							 
						 | 
						
							
							
								
								
							
							
							
								
							
							
								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
								
							 
						 | 
						
							
							
								
								
							
							
							
								
							
							
								ae0b2672ff
								
							
						 | 
						
							
							
								
								Fix #539
							
							
							
							
							
						 | 
						
							2019-09-18 19:48:16 +01:00 | 
						
						
							
							
							
							
								
							
							
							
								
							
							
						 | 
					
				
					
						
							
								
								
									 
									Neil Alexander
								
							 
						 | 
						
							
							
								
								
							
							
							
								
							
							
								2dc136f94a
								
							
						 | 
						
							
							
								
								Multicast actor to prevent races
							
							
							
							
							
						 | 
						
							2019-09-18 16:51:46 +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
								
							 
						 | 
						
							
							
								
								
							
							
							
								
							
							
								366fe7e772
								
							
						 | 
						
							
							
								
								Allow multicast to be shut down more sanely
							
							
							
							
							
						 | 
						
							2019-09-18 15:31:43 +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
								
							 
						 | 
						
							
							
								
								
							
							
							
								
							
							
								c3016e680c
								
							
						 | 
						
							
							
								
								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 14:05:18 +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 | 
						
						
							
							
							
							
								
							
							
							
								
							
							
						 | 
					
				
					
						
							
								
								
									 
									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
								
							 
						 | 
						
							
							
							
							
								
							
							
								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 | 
						
						
							
							
							
							
								
							
							
							
								
							
							
						 | 
					
				
					
						
							
								
								
									 
									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
								
							 
						 | 
						
							
							
							
							
								
							
							
								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
								
							 
						 | 
						
							
							
							
							
								
							
							
								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 | 
						
						
							
							
							
							
								
							
							
							
								
							
							
						 |