Simon Rozman 
							
						 
					 
					
						
						
							
						
						dc9bbec9db 
					 
					
						
						
							
							setupapi: trim "Get" from getters  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-05-22 19:31:52 +02:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						a6dbe4f475 
					 
					
						
						
							
							wintun: don't try to flush interface, but rather delete  
						
						
						
						
					 
					
						2019-05-17 16:06:02 +02:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						95c70b8032 
					 
					
						
						
							
							wintun: make certain methods private  
						
						
						
						
					 
					
						2019-05-17 15:01:08 +02:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						7d5f5bcc0d 
					 
					
						
						
							
							wintun: change acronyms to uppercase  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-05-17 10:22:34 +02:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						2d847a38a2 
					 
					
						
						
							
							wintun: add LUID accessor  
						
						
						
						
					 
					
						2019-05-10 21:30:23 +02:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						7e962a9932 
					 
					
						
						
							
							wintun: wait for interface registry key on device creation  
						
						... 
						
						
						
						By using RegNotifyChangeKeyValue(). Also disable dead gateway detection.
Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-05-10 16:43:58 +02:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						2e988467c2 
					 
					
						
						
							
							wintun: work around GetInterface staleness bug  
						
						
						
						
					 
					
						2019-05-03 00:42:36 +02:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						ef5f3ad80a 
					 
					
						
						
							
							tun: windows: Adopt new error codes returned by Wintun  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-04-11 19:38:11 +02:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						a291fdd746 
					 
					
						
						
							
							tun: windows: do not sleep after OPERATION_ABORTED on write  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-04-11 19:37:04 +02:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						e680008700 
					 
					
						
						
							
							tun: windows: do not sleep after OPERATION_ABORTED  
						
						
						
						
					 
					
						2019-04-09 07:36:03 +02:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						767c86f8cb 
					 
					
						
						
							
							tun: windows: Retry R/W on ERROR_OPERATION_ABORTED  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-04-04 09:20:18 +02:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						421c1f9143 
					 
					
						
						
							
							tun: windows: Attempt to reopen handle on all errors  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-04-03 05:41:38 +02:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						92f8474832 
					 
					
						
						
							
							wintun: add more retry loops  
						
						
						
						
					 
					
						2019-04-01 09:07:43 +02:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						2e0ed4614a 
					 
					
						
						
							
							tun: windows: cancel ongoing reads on closing and delete after close  
						
						... 
						
						
						
						This reverts commit 52ec440d79 
						
						
					 
					
						2019-03-26 16:14:32 +01:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						52ec440d79 
					 
					
						
						
							
							tun: windows: delete interface before deleting file handles  
						
						
						
						
					 
					
						2019-03-22 16:45:58 -06:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						2faf2dcf90 
					 
					
						
						
							
							tun: windows: Make adapter rename asynchronous  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-03-22 16:36:30 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						41c30a7279 
					 
					
						
						
							
							tun: windows: Adapter devices renamed to WINTUN<LUID Index>  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-03-22 15:29:14 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						4b1db1d39b 
					 
					
						
						
							
							tun: windows: Increase unavailable adapter timeout to 30sec  
						
						... 
						
						
						
						5 seconds was too short when debugging.
Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-03-22 13:52:51 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						a80db5e65e 
					 
					
						
						
							
							tun: windows: Make writing persistent too  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-03-22 13:52:51 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						9748a52073 
					 
					
						
						
							
							tun: windows: Fix paused adapter test  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-03-22 13:52:51 +01:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						317d716d66 
					 
					
						
						
							
							tun: windows: just open two file handles  
						
						
						
						
					 
					
						2019-03-21 15:20:09 -06:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						6440f010ee 
					 
					
						
						
							
							receive: implement flush semantics  
						
						
						
						
					 
					
						2019-03-21 14:45:41 -06:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						49ea0c9b1a 
					 
					
						
						
							
							tun: windows: add dummy overlapped events back  
						
						... 
						
						
						
						These seem basically wrong to me, but we get crashes without them. 
						
						
					 
					
						2019-03-21 02:29:09 -06:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						ca59b60aa7 
					 
					
						
						
							
							tun: windows: use new constants in sys  
						
						
						
						
					 
					
						2019-03-20 23:42:30 -06:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						91b4e909bb 
					 
					
						
						
							
							wintun: Use native Win32 API for I/O  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-03-21 00:56:45 +01:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						03f2e2614a 
					 
					
						
						
							
							tun: windows: wintun does iocp  
						
						
						
						
					 
					
						2019-03-18 02:42:45 -06:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						b0e0ab308d 
					 
					
						
						
							
							tun: windows: temporary hack for forcing MTU  
						
						
						
						
					 
					
						2019-03-13 02:52:32 -06:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						1fdf7b19a3 
					 
					
						
						
							
							wintun: Resolve some of golint warnings  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-03-04 16:37:11 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						a1aabb21ae 
					 
					
						
						
							
							Elaborate the failing step when forwarding errors on return  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-03-04 16:37:11 +01:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						69f0fe67b6 
					 
					
						
						
							
							global: begin modularization  
						
						
						
						
					 
					
						2019-03-03 05:00:40 +01:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						d435be35ca 
					 
					
						
						
							
							tun: windows: expose GUID  
						
						
						
						
					 
					
						2019-03-01 00:11:12 +01:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						967d1a0f3d 
					 
					
						
						
							
							tun: allow special methods in NativeTun  
						
						
						
						
					 
					
						2019-03-01 00:05:57 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						d002eff155 
					 
					
						
						
							
							wintun: Read/write packet size from/to exchange buffer directly  
						
						... 
						
						
						
						Driver <-> user-space communication is local and using native endian.
Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-22 16:16:14 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						e06a8f8f9f 
					 
					
						
						
							
							wintun: Make two-step slicing a one step  
						
						... 
						
						
						
						Stop relying to Go compiler optimizations and calculate the end offset
directly.
Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-22 16:11:33 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						ac4944a708 
					 
					
						
						
							
							wintun: Write exchange buffer increased back to 1MiB  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-20 20:13:33 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						2491f9d454 
					 
					
						
						
							
							wintun: Migrate from unsafe buffer handling to encoding/binary  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-20 20:10:24 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						8091c6474a 
					 
					
						
						
							
							wintun: Adopt new packet data alignment  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-20 19:56:10 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						040da43889 
					 
					
						
						
							
							wintun: Cleanup  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-20 18:38:18 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						b7025b5627 
					 
					
						
						
							
							wintun: Add TUN device locking  
						
						... 
						
						
						
						In case reading from TUN device detected TUN device was closed, it
closed the file handle and set tunFile to nil. The tunFile is
automatically reopened on retry, but... If another packet comes in the
WireGuard calls Write() method. With tunFile set to nil, this will
cause access violation.
Therefore, locking was introduced.
Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-20 13:12:08 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						6581cfb885 
					 
					
						
						
							
							wintun: Move exchange buffer in separate struct on heap  
						
						... 
						
						
						
						This allows buffer alignment and keeps it together with its meta-data.
Furthermore, the write buffer has been reduced - as long as we flush
after _every_ write, we don't need a 1MiB write buffer.
Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-20 11:41:37 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						4863089120 
					 
					
						
						
							
							wintun: Switch to dynamic packet sizes  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-19 18:50:42 +01:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						42c6d0e261 
					 
					
						
						
							
							Change package path  
						
						
						
						
					 
					
						2019-02-18 05:11:39 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						b719a09a26 
					 
					
						
						
							
							wintun: Auto-calculate TUN exchange buffer size  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-08 15:21:24 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						f05f52637f 
					 
					
						
						
							
							wintun: Simplify Read method()  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-08 14:31:05 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						713477cfb1 
					 
					
						
						
							
							wintun: Make constants private and adopt Go recommended case  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-08 08:55:23 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						5981d5cacf 
					 
					
						
						
							
							wintun: Check for user close in read loop regardless the load  
						
						... 
						
						
						
						Do the WaitForSingleObject() always to provide high-load responsiveness.
Reorder events so TUN_SIGNAL_CLOSE has priority over
TUN_SIGNAL_DATA_AVAIL, to provide high-load responsiveness at all.
Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-08 08:48:35 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						b13739ada2 
					 
					
						
						
							
							wintun: Adjust tunRWQueue.left member to match Wintun driver  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-08 07:32:12 +01:00 
						 
				 
			
				
					
						
							
							
								Simon Rozman 
							
						 
					 
					
						
						
							
						
						d87cbeeb2f 
					 
					
						
						
							
							wintun: Detect if a foreign interface with the same name exists  
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si > 
						
						
					 
					
						2019-02-07 22:02:51 +01:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						c4b43e35a7 
					 
					
						
						
							
							wintun: add FlushInterface stub  
						
						
						
						
					 
					
						2019-02-07 18:24:28 +01:00 
						 
				 
			
				
					
						
							
							
								Jason A. Donenfeld 
							
						 
					 
					
						
						
							
						
						ea59177f1c 
					 
					
						
						
							
							wintun: Introduce new package for obscuring Windows bits  
						
						
						
						
					 
					
						2019-02-07 04:39:59 +01:00