Simon Rozman 
								
							 
						 
						
							
							
							
							
								
							
							
								1ff37e2b07 
								
							 
						 
						
							
							
								
								wintun: merge opening device registry key  
							
							... 
							
							
							
							This also introduces waiting for key to appear on initial access.
See if this resolves the issue caused by HDD power-up delay resulting in
failure to create the adapter.
Signed-off-by: Simon Rozman <simon@rozman.si> 
							
						 
						
							2019-08-02 16:08:49 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Rozman 
								
							 
						 
						
							
							
							
							
								
							
							
								f5e54932e6 
								
							 
						 
						
							
							
								
								wintun: simplify checking reboot requirement  
							
							... 
							
							
							
							We never checked checkReboot() reported error anyway.
Signed-off-by: Simon Rozman <simon@rozman.si> 
							
						 
						
							2019-08-02 16:08:49 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Rozman 
								
							 
						 
						
							
							
							
							
								
							
							
								73698066d1 
								
							 
						 
						
							
							
								
								wintun: refactor err == nil error checking  
							
							... 
							
							
							
							Signed-off-by: Simon Rozman <simon@rozman.si> 
							
						 
						
							2019-08-02 15:18:58 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Jason A. Donenfeld 
								
							 
						 
						
							
							
							
							
								
							
							
								05ece4d167 
								
							 
						 
						
							
							
								
								wintun: handle error for deadgwdetect  
							
							
							
						 
						
							2019-08-02 14:37:09 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Jason A. Donenfeld 
								
							 
						 
						
							
							
							
							
								
							
							
								a2249449d6 
								
							 
						 
						
							
							
								
								wintun: get interface path properly with cfgmgr  
							
							
							
						 
						
							2019-07-23 14:58:46 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Jason A. Donenfeld 
								
							 
						 
						
							
							
							
							
								
							
							
								b5a7cbf069 
								
							 
						 
						
							
							
								
								wintun: simplify resolution of dev node  
							
							
							
						 
						
							2019-07-23 11:45:13 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Jason A. Donenfeld 
								
							 
						 
						
							
							
							
							
								
							
							
								50cd522cb0 
								
							 
						 
						
							
							
								
								wintun: enable sharing of pnp node  
							
							
							
						 
						
							2019-07-22 17:01:27 +02:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Jason A. Donenfeld 
								
							 
						 
						
							
							
							
							
								
							
							
								3341e2d444 
								
							 
						 
						
							
							
								
								tun: windows: get rid of retry logic  
							
							... 
							
							
							
							Things work fine on Windows 8. 
							
						 
						
							2019-07-19 14:01: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 
							
								 
							
						 
					 
				
					
						
							
								
								
									Jason A. Donenfeld 
								
							 
						 
						
							
							
							
							
								
							
							
								c69d026649 
								
							 
						 
						
							
							
								
								tun: windows: never retry open on Windows 10  
							
							
							
						 
						
							2019-06-18 17:51:29 +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 
								
							 
						 
						
							
							
							
							
								
							
							
								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 
							
								 
							
						 
					 
				
					
						
							
								
								
									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 
							
								 
							
						 
					 
				
					
						
							
								
								
									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 
								
							 
						 
						
							
							
							
							
								
							
							
								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 
							
								 
							
						 
					 
				
					
						
							
								
								
									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 
							
								 
							
						 
					 
				
					
						
							
								
								
									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