Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							31ff9c02fe 
							
						 
					 
					
						
						
							
							tun: windows: open file at startup time  
						
						 
						
						
						
					 
					
						2019-07-18 19:27:27 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							1e39c33ab1 
							
						 
					 
					
						
						
							
							tun: windows: silently drop packet when ring is full  
						
						 
						
						
						
					 
					
						2019-07-18 15:48:34 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							6c50fedd8e 
							
						 
					 
					
						
						
							
							tun: windows: switch to NDIS device object  
						
						 
						
						
						
					 
					
						2019-07-18 12:26:57 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							298d759f3e 
							
						 
					 
					
						
						
							
							wintun: calculate path of NDIS device object symbolic link  
						
						 
						
						
						
					 
					
						2019-07-18 10:25:20 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Michael Zeltner 
							
						 
					 
					
						
						
						
						
							
						
						
							4d5819183e 
							
						 
					 
					
						
						
							
							tun: openbsd: don't change MTU when it's already the expected size  
						
						 
						
						... 
						
						
						
						Allows for running wireguard-go as non-root user.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> 
						
					 
					
						2019-07-18 10:25:20 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							9ea9a92117 
							
						 
					 
					
						
						
							
							tun: windows: spin for a bit before falling back to event object  
						
						 
						
						
						
					 
					
						2019-07-18 10:25:20 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							2e24e7dcae 
							
						 
					 
					
						
						
							
							tun: windows: implement ring buffers  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-07-17 14:32:13 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							5c3d333f10 
							
						 
					 
					
						
						
							
							tun: windows: registration of write buffer no longer required  
						
						 
						
						
						
					 
					
						2019-07-05 14:17:48 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							d8448f8a02 
							
						 
					 
					
						
						
							
							tun: windows: decrease alignment to 4  
						
						 
						
						
						
					 
					
						2019-07-05 07:53:19 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							13abbdf14b 
							
						 
					 
					
						
						
							
							tun: windows: delay initial write  
						
						 
						
						... 
						
						
						
						Otherwise we provoke Wintun 0.3. 
						
					 
					
						2019-07-04 22:41:42 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							b844f1b3cc 
							
						 
					 
					
						
						
							
							tun: windows: packetNum is unused  
						
						 
						
						
						
					 
					
						2019-07-01 15:23:44 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							5e6eff81b6 
							
						 
					 
					
						
						
							
							tun: windows: inform wintun of maximum buffer length for writes  
						
						 
						
						
						
					 
					
						2019-06-26 13:27:48 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							c69d026649 
							
						 
					 
					
						
						
							
							tun: windows: never retry open on Windows 10  
						
						 
						
						
						
					 
					
						2019-06-18 17:51:29 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matt Layher 
							
						 
					 
					
						
						
						
						
							
						
						
							1f48971a80 
							
						 
					 
					
						
						
							
							tun: remove TUN prefix from types to reduce stutter elsewhere  
						
						 
						
						... 
						
						
						
						Signed-off-by: Matt Layher <mdlayher@gmail.com> 
						
					 
					
						2019-06-14 18:35:57 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							41fdbf0971 
							
						 
					 
					
						
						
							
							wintun: increase registry timeout  
						
						 
						
						
						
					 
					
						2019-06-11 00:33:07 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							03eee4a778 
							
						 
					 
					
						
						
							
							wintun: add helper for cleaning up  
						
						 
						
						
						
					 
					
						2019-06-10 11:34:59 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							700860f8e6 
							
						 
					 
					
						
						
							
							wintun: simplify error matching and remove dumb comments  
						
						 
						
						
						
					 
					
						2019-06-10 11:10:49 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							a304f69e0d 
							
						 
					 
					
						
						
							
							wintun: fix comments and remove hwnd param  
						
						 
						
						... 
						
						
						
						This now looks more idiomatic. 
						
					 
					
						2019-06-10 11:03:36 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							baafe92888 
							
						 
					 
					
						
						
							
							setupapi: add SetDeviceRegistryPropertyString description  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-06-10 10:43:04 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							a1a97d1e41 
							
						 
					 
					
						
						
							
							setupapi: unify ERROR_INSUFFICIENT_BUFFER handling  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-06-10 10:43:03 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							e924280baa 
							
						 
					 
					
						
						
							
							wintun: allow controlling GUID  
						
						 
						
						
						
					 
					
						2019-06-10 10:43:02 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							bb3f1932fa 
							
						 
					 
					
						
						
							
							setupapi: add DeviceInstanceID()  
						
						 
						
						
						
					 
					
						2019-06-10 10:43:01 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							eaf17becfa 
							
						 
					 
					
						
						
							
							global: fixup TODO comment spacing  
						
						 
						
						
						
					 
					
						2019-06-06 23:00:15 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							6d8b68c8f3 
							
						 
					 
					
						
						
							
							wintun: guid functions are upstream  
						
						 
						
						
						
					 
					
						2019-06-06 22:39:20 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							c2ed133df8 
							
						 
					 
					
						
						
							
							wintun: simplify DeleteInterface method signature  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-06-06 08:58:26 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							108c37a056 
							
						 
					 
					
						
						
							
							wintun: don't run HrRenameConnection in separate thread  
						
						 
						
						... 
						
						
						
						It's very slow, but unfortunately we haven't a choice. NLA needs this to
have completed. 
						
					 
					
						2019-06-05 13:09:20 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							e4b0ef29a1 
							
						 
					 
					
						
						
							
							tun: windows: obsolete 256 packets per exchange buffer limitation  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-06-05 11:55:28 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							625e445b22 
							
						 
					 
					
						
						
							
							setupapi, wintun: replace syscall with golang.org/x/sys/windows  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-06-04 14:54:56 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							85b85e62e5 
							
						 
					 
					
						
						
							
							wintun: set DI_QUIETINSTALL flag for GUI-less device management  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-06-04 14:45:23 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							014f736480 
							
						 
					 
					
						
						
							
							setupapi: define PropChangeParams struct  
						
						 
						
						... 
						
						
						
						This structure is required for calling DIF_PROPERTYCHANGE installer
class.
Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-06-04 14:45:23 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							da61947ec3 
							
						 
					 
					
						
						
							
							tun: windows: mitigate infinite loop in Flush()  
						
						 
						
						... 
						
						
						
						It's possible that for whatever reason, we keep returning EOF, resulting
in repeated close/open/write operations, except with empty packets. 
						
					 
					
						2019-05-31 16:55:03 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Matt Layher 
							
						 
					 
					
						
						
						
						
							
						
						
							32912dc778 
							
						 
					 
					
						
						
							
							device, tun: rearrange code and fix device tests  
						
						 
						
						... 
						
						
						
						Signed-off-by: Matt Layher <mdlayher@gmail.com> 
						
					 
					
						2019-05-29 18:34:55 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							d4034e5f8a 
							
						 
					 
					
						
						
							
							wintun: remove extra /  
						
						 
						
						
						
					 
					
						2019-05-26 02:20:01 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							6a0a3a5406 
							
						 
					 
					
						
						
							
							wintun: revise GetInterface()  
						
						 
						
						... 
						
						
						
						- Make foreign interface found error numeric to ease condition
  detection.
- Update GetInterface() documentation.
- Make tun.CreateTUN() quit when foreign interface found before
  attempting to create a Wintun interface with a duplicate name.
  Creation is futile.
Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-05-24 09:29:57 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							8fdcf5ee30 
							
						 
					 
					
						
						
							
							wintun: never return nil, nil  
						
						 
						
						
						
					 
					
						2019-05-23 15:25:53 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								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 
							
						 
					 
					
						
						
						
						
							
						
						
							3bf41b06ae 
							
						 
					 
					
						
						
							
							global: regroup all imports  
						
						 
						
						
						
					 
					
						2019-05-14 09:09:52 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							3147f00089 
							
						 
					 
					
						
						
							
							wintun: registry: fix nits  
						
						 
						
						
						
					 
					
						2019-05-11 17:25:48 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							6c1b66802f 
							
						 
					 
					
						
						
							
							wintun: registry: revise value reading  
						
						 
						
						... 
						
						
						
						- Make getStringValueRetry() reusable for reading any value type. This
  merges code from GetIntegerValueWait().
- expandString() >> toString() and extend to support REG_MULTI_SZ
  (to return first value of REG_MULTI_SZ). Furthermore, doing our own
  UTF-16 to UTF-8 conversion works around a bug in windows/registry's
  GetStringValue() non-zero terminated string handling.
- Provide toInteger() analogous to toString()
- GetStringValueWait() tolerates and reads REG_MULTI_SZ too now. It
  returns REG_MULTI_SZ[0], making GetFirstStringValueWait() redundant.
Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-05-11 17:14:37 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							5669ed326f 
							
						 
					 
					
						
						
							
							wintun: call HrRenameConnection in another thread  
						
						 
						
						
						
					 
					
						2019-05-10 21:31:37 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							2d847a38a2 
							
						 
					 
					
						
						
							
							wintun: add LUID accessor  
						
						 
						
						
						
					 
					
						2019-05-10 21:30:23 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							7a8553aef0 
							
						 
					 
					
						
						
							
							wintun: enumerate faster by using COMPATDRIVER instead of CLASSDRIVER  
						
						 
						
						
						
					 
					
						2019-05-10 20:30:59 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							a6045ac042 
							
						 
					 
					
						
						
							
							wintun: destroy devinfolist after usage  
						
						 
						
						
						
					 
					
						2019-05-10 20:19:11 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							1c92b48415 
							
						 
					 
					
						
						
							
							wintun: registry: replace REG_NOTIFY with NOTIFY  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-05-10 18:09:20 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							c267965bf8 
							
						 
					 
					
						
						
							
							wintun: IpConfig is a MULTI_SZ, and fix errors  
						
						 
						
						
						
					 
					
						2019-05-10 18:06:49 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							1bf1dadf15 
							
						 
					 
					
						
						
							
							wintun: poll for device key  
						
						 
						
						... 
						
						
						
						It's actually pretty hard to guess where it is. 
						
					 
					
						2019-05-10 17:34:03 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							f9dcfccbb7 
							
						 
					 
					
						
						
							
							wintun: fix scope of error object  
						
						 
						
						
						
					 
					
						2019-05-10 16:59:24 +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  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							dcb8f1aa6b 
							
						 
					 
					
						
						
							
							wintun: fix GUID leading zero padding  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-05-09 12:16:21 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							81ca08f1b3 
							
						 
					 
					
						
						
							
							setupapi: safer aliasing of slice types  
						
						 
						
						
						
					 
					
						2019-05-03 09:34:00 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							2e988467c2 
							
						 
					 
					
						
						
							
							wintun: work around GetInterface staleness bug  
						
						 
						
						
						
					 
					
						2019-05-03 00:42:36 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							46dbf54040 
							
						 
					 
					
						
						
							
							wintun: don't retry when not creating  
						
						 
						
						... 
						
						
						
						The only time we're trying to counteract the race condition is when
we're creating a driver. When we're simply looking up all drivers, it
doesn't make sense to retry. 
						
					 
					
						2019-05-02 23:53:15 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							247e14693a 
							
						 
					 
					
						
						
							
							wintun: try harder to open registry key  
						
						 
						
						... 
						
						
						
						This sucks. Can we please find a deterministic way of doing this
instead? 
						
					 
					
						2019-04-29 14:00:49 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							bb42ec7d18 
							
						 
					 
					
						
						
							
							tun: freebsd: work around numerous kernel panics on shutdown  
						
						 
						
						... 
						
						
						
						There are numerous race conditions. But even this will crash it:
while true; do ifconfig tun0 create; ifconfig tun0 destroy; done
It seems like LLv6 is related, which we're not using anyway, so
explicitly disable it on the interface. 
						
					 
					
						2019-04-23 18:00:23 +09:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							f1dc167901 
							
						 
					 
					
						
						
							
							setupapi: Fix struct size mismatches  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-04-19 10:08:11 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							c7a26dfef3 
							
						 
					 
					
						
						
							
							setupapi: actually fix padding by rounding up to sizeof(void*)  
						
						 
						
						
						
					 
					
						2019-04-19 10:19:00 +09:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							d024393335 
							
						 
					 
					
						
						
							
							tun: darwin: write routeSocket variable in helper  
						
						 
						
						... 
						
						
						
						Otherwise the race detector "complains". 
						
					 
					
						2019-04-19 07:53:19 +09:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							5811447b38 
							
						 
					 
					
						
						
							
							setupapi: Revise DrvInfoDetailData struct size calculation  
						
						 
						
						... 
						
						
						
						Go adds trailing padding to DrvInfoDetailData struct in GOARCH=386 which
confuses SetupAPI expecting exactly sizeof(SP_DRVINFO_DETAIL_DATA).
Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-04-18 10:39:22 +02:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							e0a8c22aa6 
							
						 
					 
					
						
						
							
							windows: use proper constants from updated x/sys  
						
						 
						
						
						
					 
					
						2019-04-13 02:02:02 +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 
							
						 
					 
					
						
						
						
						
							
						
						
							ac25702eaf 
							
						 
					 
					
						
						
							
							wintun: rename device using undocumented API that netsh.exe uses  
						
						 
						
						
						
					 
					
						2019-04-01 12:04:44 +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  and adds
some spice. 
						
					 
					
						2019-03-26 16:14:32 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							2fa80c0cb7 
							
						 
					 
					
						
						
							
							wintun: query for NetCfgInstanceId several times  
						
						 
						
						
						
					 
					
						2019-03-22 16:48:40 -06: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  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							66fb5caf02 
							
						 
					 
					
						
						
							
							wintun: Poll more often  
						
						 
						
						
						
					 
					
						2019-03-10 03:47:54 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							c2a2b8d739 
							
						 
					 
					
						
						
							
							wintun: Make errors more descriptive  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-03-08 10:03:57 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							70449f1a97 
							
						 
					 
					
						
						
							
							wintun: Return correct reboot-req flag on CreateInterface() error too  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-03-08 10:03:57 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							33c3528430 
							
						 
					 
					
						
						
							
							wintun: Fix double-quoted strings escaping on output  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-03-08 10:03:57 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							30ab07e354 
							
						 
					 
					
						
						
							
							wintun: Introduce SetupAPI enumerator and machineName consts  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-03-08 10:03:57 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							368dea72fe 
							
						 
					 
					
						
						
							
							wintun: Cleanup  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-03-07 21:12:20 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							9b22255cad 
							
						 
					 
					
						
						
							
							wintun: Refactor network registry key name generation  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-03-07 21:12:20 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							11f5780250 
							
						 
					 
					
						
						
							
							wintun: Revise interface creation wait  
						
						 
						
						... 
						
						
						
						DIF_INSTALLDEVICE returns almost immediately, while the device
installation continues in the background. It might take a while, before
all registry keys and values are populated.
Previously, wireguard-go waited for HKLM\SYSTEM\CurrentControlSet\
Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\<id> registry key
only.
Followed by a SetInterfaceName() method of Wintun struct which tried to
access HKLM\SYSTEM\CurrentControlSet\Control\Network\
{4D36E972-E325-11CE-BFC1-08002BE10318}\<id>\Connection registry key
might not be available yet.
This commit loops until both registry keys are available before
returning from CreateInterface() function.
Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-03-07 21:12:20 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							92f72f5aa6 
							
						 
					 
					
						
						
							
							tun: linux: work out netpoll trick  
						
						 
						
						
						
					 
					
						2019-03-07 01:51:41 +01: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  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							9041d38e2d 
							
						 
					 
					
						
						
							
							Simplify reading NetCfgInstanceId from registry  
						
						 
						
						... 
						
						
						
						As querying non-existing registry value and reading non-existing
registry string value both return ERROR_FILE_NOT_FOUND, we can
use later only.
Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-03-04 16:37:11 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Simon Rozman 
							
						 
					 
					
						
						
						
						
							
						
						
							cddfd9a0d8 
							
						 
					 
					
						
						
							
							Unify interface-specific network registry key open  
						
						 
						
						... 
						
						
						
						Signed-off-by: Simon Rozman <simon@rozman.si> 
						
					 
					
						2019-03-04 16:37:11 +01:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jason A. Donenfeld 
							
						 
					 
					
						
						
						
						
							
						
						
							68f0721c6a 
							
						 
					 
					
						
						
							
							tun: import mobile particularities  
						
						 
						
						
						
					 
					
						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