]> git.ipfire.org Git - thirdparty/wireguard-go.git/log
thirdparty/wireguard-go.git
5 years agowintun: try multiple names until one isn't a duplicate
Jason A. Donenfeld [Thu, 22 Aug 2019 06:52:59 +0000 (08:52 +0200)] 
wintun: try multiple names until one isn't a duplicate

5 years agowintun: use nci.dll directly instead of buggy netshell
Jason A. Donenfeld [Wed, 21 Aug 2019 06:40:44 +0000 (08:40 +0200)] 
wintun: use nci.dll directly instead of buggy netshell

5 years agowintun: set friendly a bit better
Jason A. Donenfeld [Tue, 20 Aug 2019 13:48:08 +0000 (15:48 +0200)] 
wintun: set friendly a bit better

This is still wrong, but NETSETUPPKEY_Driver_FriendlyName seems a bit
tricky to use.

5 years agowintun: also set friendly name after setting interface name
Jason A. Donenfeld [Mon, 19 Aug 2019 07:20:23 +0000 (09:20 +0200)] 
wintun: also set friendly name after setting interface name

5 years agowintun: defer requires unique variable
Jason A. Donenfeld [Mon, 19 Aug 2019 07:11:21 +0000 (09:11 +0200)] 
wintun: defer requires unique variable

5 years agowintun: set adapter description name
Jason A. Donenfeld [Mon, 19 Aug 2019 07:01:53 +0000 (09:01 +0200)] 
wintun: set adapter description name

5 years agotun: windows: don't spin unless we really need it
Jason A. Donenfeld [Sun, 18 Aug 2019 09:49:37 +0000 (11:49 +0200)] 
tun: windows: don't spin unless we really need it

6 years agoversion: bump snapshot 0.0.20190805
Jason A. Donenfeld [Mon, 5 Aug 2019 17:29:12 +0000 (19:29 +0200)] 
version: bump snapshot

6 years agodevice: drop lock before expiring keys
Jason A. Donenfeld [Mon, 5 Aug 2019 15:46:34 +0000 (17:46 +0200)] 
device: drop lock before expiring keys

6 years agouapi: skip peers with invalid keys
Jason A. Donenfeld [Mon, 5 Aug 2019 14:57:41 +0000 (16:57 +0200)] 
uapi: skip peers with invalid keys

6 years agotun: windows: spin for only a millisecond/80
Jason A. Donenfeld [Sat, 3 Aug 2019 17:05:53 +0000 (19:05 +0200)] 
tun: windows: spin for only a millisecond/80

Performance stays the same as before.

6 years agowintun: merge opening device registry key
Simon Rozman [Fri, 2 Aug 2019 13:48:41 +0000 (15:48 +0200)] 
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>
6 years agowintun: simplify checking reboot requirement
Simon Rozman [Fri, 2 Aug 2019 13:37:08 +0000 (15:37 +0200)] 
wintun: simplify checking reboot requirement

We never checked checkReboot() reported error anyway.

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agowintun: refactor `err == nil` error checking
Simon Rozman [Fri, 2 Aug 2019 12:53:02 +0000 (14:53 +0200)] 
wintun: refactor `err == nil` error checking

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agowintun: handle error for deadgwdetect
Jason A. Donenfeld [Fri, 2 Aug 2019 12:37:09 +0000 (14:37 +0200)] 
wintun: handle error for deadgwdetect

6 years agotun: darwin: do not attempt to close tun.event twice
Jason A. Donenfeld [Fri, 2 Aug 2019 10:24:00 +0000 (12:24 +0200)] 
tun: darwin: do not attempt to close tun.event twice

Previously it was possible for this to race. It turns out we really
don't need to set anything to -1 anyway.

6 years agowintun: get interface path properly with cfgmgr
Jason A. Donenfeld [Tue, 23 Jul 2019 12:58:46 +0000 (14:58 +0200)] 
wintun: get interface path properly with cfgmgr

6 years agotun: windows: style
Jason A. Donenfeld [Tue, 23 Jul 2019 09:45:48 +0000 (11:45 +0200)] 
tun: windows: style

6 years agowintun: simplify resolution of dev node
Jason A. Donenfeld [Tue, 23 Jul 2019 09:45:13 +0000 (11:45 +0200)] 
wintun: simplify resolution of dev node

6 years agowintun: enable sharing of pnp node
Jason A. Donenfeld [Mon, 22 Jul 2019 15:01:27 +0000 (17:01 +0200)] 
wintun: enable sharing of pnp node

6 years agotun: windows: close event handle on shutdown
Jason A. Donenfeld [Mon, 22 Jul 2019 07:37:20 +0000 (09:37 +0200)] 
tun: windows: close event handle on shutdown

6 years agoipc: windows: match SDDL of WDK and make monkeyable
Jason A. Donenfeld [Fri, 19 Jul 2019 13:34:26 +0000 (15:34 +0200)] 
ipc: windows: match SDDL of WDK and make monkeyable

6 years agotun: windows: get rid of retry logic
Jason A. Donenfeld [Fri, 19 Jul 2019 11:51:56 +0000 (13:51 +0200)] 
tun: windows: get rid of retry logic

Things work fine on Windows 8.

6 years agotun: windows: use specific IOCTL code
Jason A. Donenfeld [Fri, 19 Jul 2019 06:30:19 +0000 (08:30 +0200)] 
tun: windows: use specific IOCTL code

6 years agodevice: do not crash on nil'd bind in windows binding
Jason A. Donenfeld [Thu, 18 Jul 2019 17:34:45 +0000 (19:34 +0200)] 
device: do not crash on nil'd bind in windows binding

6 years agotun: windows: open file at startup time
Jason A. Donenfeld [Thu, 18 Jul 2019 17:26:25 +0000 (19:26 +0200)] 
tun: windows: open file at startup time

6 years agotun: windows: silently drop packet when ring is full
Jason A. Donenfeld [Thu, 18 Jul 2019 13:48:34 +0000 (15:48 +0200)] 
tun: windows: silently drop packet when ring is full

6 years agotun: windows: switch to NDIS device object
Jason A. Donenfeld [Thu, 18 Jul 2019 10:26:57 +0000 (12:26 +0200)] 
tun: windows: switch to NDIS device object

6 years agowintun: calculate path of NDIS device object symbolic link
Jason A. Donenfeld [Thu, 18 Jul 2019 08:25:12 +0000 (10:25 +0200)] 
wintun: calculate path of NDIS device object symbolic link

6 years agotun: openbsd: don't change MTU when it's already the expected size
Michael Zeltner [Wed, 17 Jul 2019 21:04:01 +0000 (23:04 +0200)] 
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>
6 years agotun: windows: spin for a bit before falling back to event object
Jason A. Donenfeld [Wed, 17 Jul 2019 07:06:34 +0000 (09:06 +0200)] 
tun: windows: spin for a bit before falling back to event object

6 years agotun: windows: implement ring buffers
Simon Rozman [Thu, 11 Jul 2019 08:35:47 +0000 (10:35 +0200)] 
tun: windows: implement ring buffers

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agodevice: immediately rekey all peers after changing device private key
Jason A. Donenfeld [Thu, 11 Jul 2019 15:36:36 +0000 (17:36 +0200)] 
device: immediately rekey all peers after changing device private key

Reported-by: Derrick Pallas <derrick@pallas.us>
6 years agoREADME: update windows info
Jason A. Donenfeld [Mon, 8 Jul 2019 12:52:49 +0000 (14:52 +0200)] 
README: update windows info

6 years agotun: windows: registration of write buffer no longer required
Jason A. Donenfeld [Fri, 5 Jul 2019 05:54:25 +0000 (07:54 +0200)] 
tun: windows: registration of write buffer no longer required

6 years agotun: windows: decrease alignment to 4
Jason A. Donenfeld [Fri, 5 Jul 2019 05:53:19 +0000 (07:53 +0200)] 
tun: windows: decrease alignment to 4

6 years agotun: windows: delay initial write
Jason A. Donenfeld [Thu, 4 Jul 2019 20:41:42 +0000 (22:41 +0200)] 
tun: windows: delay initial write

Otherwise we provoke Wintun 0.3.

6 years agodevice: receive: uniform message for source address check
Jason A. Donenfeld [Mon, 1 Jul 2019 13:24:50 +0000 (15:24 +0200)] 
device: receive: uniform message for source address check

6 years agotun: windows: packetNum is unused
Jason A. Donenfeld [Mon, 1 Jul 2019 11:37:54 +0000 (13:37 +0200)] 
tun: windows: packetNum is unused

6 years agodevice: receive: simplify flush loop
Jason A. Donenfeld [Mon, 1 Jul 2019 13:23:24 +0000 (15:23 +0200)] 
device: receive: simplify flush loop

6 years agotun: windows: inform wintun of maximum buffer length for writes
Jason A. Donenfeld [Wed, 26 Jun 2019 11:27:48 +0000 (13:27 +0200)] 
tun: windows: inform wintun of maximum buffer length for writes

6 years agotun: windows: never retry open on Windows 10
Jason A. Donenfeld [Tue, 18 Jun 2019 14:08:28 +0000 (16:08 +0200)] 
tun: windows: never retry open on Windows 10

6 years agotun: remove TUN prefix from types to reduce stutter elsewhere
Matt Layher [Mon, 10 Jun 2019 21:33:40 +0000 (17:33 -0400)] 
tun: remove TUN prefix from types to reduce stutter elsewhere

Signed-off-by: Matt Layher <mdlayher@gmail.com>
6 years agodevice: update transfer counters correctly
Jason A. Donenfeld [Tue, 11 Jun 2019 16:13:52 +0000 (18:13 +0200)] 
device: update transfer counters correctly

The rule is to always update them to the full packet size minus UDP/IP
encapsulation for all authenticated packet types.

6 years agowintun: increase registry timeout
Jason A. Donenfeld [Mon, 10 Jun 2019 22:33:07 +0000 (00:33 +0200)] 
wintun: increase registry timeout

6 years agowintun: add helper for cleaning up
Jason A. Donenfeld [Mon, 10 Jun 2019 09:20:49 +0000 (11:20 +0200)] 
wintun: add helper for cleaning up

6 years agowintun: simplify error matching and remove dumb comments
Jason A. Donenfeld [Mon, 10 Jun 2019 09:10:49 +0000 (11:10 +0200)] 
wintun: simplify error matching and remove dumb comments

6 years agowintun: fix comments and remove hwnd param
Jason A. Donenfeld [Mon, 10 Jun 2019 09:02:18 +0000 (11:02 +0200)] 
wintun: fix comments and remove hwnd param

This now looks more idiomatic.

6 years agosetupapi: add SetDeviceRegistryPropertyString description
Simon Rozman [Mon, 10 Jun 2019 06:47:47 +0000 (08:47 +0200)] 
setupapi: add SetDeviceRegistryPropertyString description

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agosetupapi: unify ERROR_INSUFFICIENT_BUFFER handling
Simon Rozman [Mon, 10 Jun 2019 06:47:16 +0000 (08:47 +0200)] 
setupapi: unify ERROR_INSUFFICIENT_BUFFER handling

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agowintun: allow controlling GUID
Jason A. Donenfeld [Sun, 9 Jun 2019 17:20:17 +0000 (19:20 +0200)] 
wintun: allow controlling GUID

6 years agosetupapi: add DeviceInstanceID()
Jason A. Donenfeld [Sun, 9 Jun 2019 15:22:59 +0000 (17:22 +0200)] 
setupapi: add DeviceInstanceID()

6 years agoglobal: fixup TODO comment spacing
Jason A. Donenfeld [Thu, 6 Jun 2019 21:00:15 +0000 (23:00 +0200)] 
global: fixup TODO comment spacing

6 years agowintun: guid functions are upstream
Jason A. Donenfeld [Thu, 6 Jun 2019 20:28:13 +0000 (22:28 +0200)] 
wintun: guid functions are upstream

6 years agowintun: simplify DeleteInterface method signature
Simon Rozman [Mon, 3 Jun 2019 12:16:34 +0000 (14:16 +0200)] 
wintun: simplify DeleteInterface method signature

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agowintun: don't run HrRenameConnection in separate thread
Jason A. Donenfeld [Wed, 5 Jun 2019 11:09:00 +0000 (13:09 +0200)] 
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.

6 years agotun: windows: obsolete 256 packets per exchange buffer limitation
Simon Rozman [Wed, 5 Jun 2019 09:55:28 +0000 (11:55 +0200)] 
tun: windows: obsolete 256 packets per exchange buffer limitation

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agosetupapi, wintun: replace syscall with golang.org/x/sys/windows
Simon Rozman [Tue, 4 Jun 2019 12:54:56 +0000 (14:54 +0200)] 
setupapi, wintun: replace syscall with golang.org/x/sys/windows

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agowintun: set DI_QUIETINSTALL flag for GUI-less device management
Simon Rozman [Tue, 4 Jun 2019 11:57:36 +0000 (13:57 +0200)] 
wintun: set DI_QUIETINSTALL flag for GUI-less device management

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agosetupapi: define PropChangeParams struct
Simon Rozman [Mon, 3 Jun 2019 12:12:50 +0000 (14:12 +0200)] 
setupapi: define PropChangeParams struct

This structure is required for calling DIF_PROPERTYCHANGE installer
class.

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agodevice: remove redundant return statements
Matt Layher [Mon, 3 Jun 2019 20:25:32 +0000 (16:25 -0400)] 
device: remove redundant return statements

More staticcheck fixes:

$ staticcheck ./... | grep S1023
device/noise-helpers.go:45:2: redundant return statement (S1023)
device/noise-helpers.go:54:2: redundant return statement (S1023)
device/noise-helpers.go:64:2: redundant return statement (S1023)

Signed-off-by: Matt Layher <mdlayher@gmail.com>
6 years agodevice: use bytes.Equal for equality check, simplify assertEqual
Matt Layher [Mon, 3 Jun 2019 20:44:06 +0000 (16:44 -0400)] 
device: use bytes.Equal for equality check, simplify assertEqual

Signed-off-by: Matt Layher <mdlayher@gmail.com>
6 years agodevice, ratelimiter: replace uses of time.Now().Sub() with time.Since()
Matt Layher [Mon, 3 Jun 2019 19:46:46 +0000 (15:46 -0400)] 
device, ratelimiter: replace uses of time.Now().Sub() with time.Since()

Simplification found by staticcheck:

$ staticcheck ./... | grep S1012
device/cookie.go:90:5: should use time.Since instead of time.Now().Sub (S1012)
device/cookie.go:127:5: should use time.Since instead of time.Now().Sub (S1012)
device/cookie.go:242:5: should use time.Since instead of time.Now().Sub (S1012)
device/noise-protocol.go:304:13: should use time.Since instead of time.Now().Sub (S1012)
device/receive.go:82:46: should use time.Since instead of time.Now().Sub (S1012)
device/send.go:132:5: should use time.Since instead of time.Now().Sub (S1012)
device/send.go:139:5: should use time.Since instead of time.Now().Sub (S1012)
device/send.go:235:59: should use time.Since instead of time.Now().Sub (S1012)
device/send.go:393:9: should use time.Since instead of time.Now().Sub (S1012)
ratelimiter/ratelimiter.go:79:10: should use time.Since instead of time.Now().Sub (S1012)
ratelimiter/ratelimiter.go:87:10: should use time.Since instead of time.Now().Sub (S1012)

Change applied using:

$ find . -type f -name "*.go" -exec sed -i "s/Now().Sub(/Since(/g" {} \;

Signed-off-by: Matt Layher <mdlayher@gmail.com>
6 years agoipc/winpipe: go fmt
Matt Layher [Mon, 3 Jun 2019 18:38:42 +0000 (14:38 -0400)] 
ipc/winpipe: go fmt

Signed-off-by: Matt Layher <mdlayher@gmail.com>
6 years agotun: windows: mitigate infinite loop in Flush()
Jason A. Donenfeld [Fri, 31 May 2019 13:40:08 +0000 (15:40 +0200)] 
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.

6 years agodevice: add SendKeepalivesToPeersWithCurrentKeypair for handover
Jason A. Donenfeld [Thu, 30 May 2019 13:15:54 +0000 (15:15 +0200)] 
device: add SendKeepalivesToPeersWithCurrentKeypair for handover

6 years agotai64n: account for whitening in test
Jason A. Donenfeld [Wed, 29 May 2019 16:43:17 +0000 (18:43 +0200)] 
tai64n: account for whitening in test

6 years agodevice, tun: rearrange code and fix device tests
Matt Layher [Wed, 29 May 2019 16:18:20 +0000 (12:18 -0400)] 
device, tun: rearrange code and fix device tests

Signed-off-by: Matt Layher <mdlayher@gmail.com>
6 years agowintun: remove extra /
Jason A. Donenfeld [Sun, 26 May 2019 00:20:01 +0000 (02:20 +0200)] 
wintun: remove extra /

6 years agodevice: darwin actually doesn't need bound interfaces
Jason A. Donenfeld [Sat, 25 May 2019 16:10:52 +0000 (18:10 +0200)] 
device: darwin actually doesn't need bound interfaces

6 years agodevice: make initiations per second match kernel implementation
Jason A. Donenfeld [Sat, 25 May 2019 00:07:18 +0000 (02:07 +0200)] 
device: make initiations per second match kernel implementation

6 years agodevice: timers: add jitter on ack failure reinitiation
Jason A. Donenfeld [Fri, 24 May 2019 11:48:03 +0000 (13:48 +0200)] 
device: timers: add jitter on ack failure reinitiation

6 years agowintun: revise GetInterface()
Simon Rozman [Fri, 24 May 2019 07:28:50 +0000 (09:28 +0200)] 
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>
6 years agowintun: never return nil, nil
Jason A. Donenfeld [Thu, 23 May 2019 13:25:53 +0000 (15:25 +0200)] 
wintun: never return nil, nil

6 years agoipc: use simplified fork of winio
Jason A. Donenfeld [Thu, 23 May 2019 12:53:44 +0000 (14:53 +0200)] 
ipc: use simplified fork of winio

6 years agosetupapi: trim "Get" from getters
Simon Rozman [Wed, 22 May 2019 17:31:52 +0000 (19:31 +0200)] 
setupapi: trim "Get" from getters

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agowintun: don't try to flush interface, but rather delete
Jason A. Donenfeld [Fri, 17 May 2019 14:06:02 +0000 (16:06 +0200)] 
wintun: don't try to flush interface, but rather delete

6 years agodevice: fail to give bind if it doesn't exist
Jason A. Donenfeld [Fri, 17 May 2019 13:35:20 +0000 (15:35 +0200)] 
device: fail to give bind if it doesn't exist

6 years agowintun: make certain methods private
Jason A. Donenfeld [Fri, 17 May 2019 12:26:46 +0000 (14:26 +0200)] 
wintun: make certain methods private

6 years agoversion: bump snapshot 0.0.20190517
Jason A. Donenfeld [Fri, 17 May 2019 08:28:04 +0000 (10:28 +0200)] 
version: bump snapshot

6 years agomakefile: do not show warning on non-linux
Jason A. Donenfeld [Fri, 17 May 2019 08:27:12 +0000 (10:27 +0200)] 
makefile: do not show warning on non-linux

6 years agowintun: change acronyms to uppercase
Simon Rozman [Thu, 16 May 2019 08:33:47 +0000 (10:33 +0200)] 
wintun: change acronyms to uppercase

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agoglobal: regroup all imports
Jason A. Donenfeld [Tue, 14 May 2019 07:09:52 +0000 (09:09 +0200)] 
global: regroup all imports

6 years agowintun: registry: fix nits
Jason A. Donenfeld [Sat, 11 May 2019 15:25:48 +0000 (17:25 +0200)] 
wintun: registry: fix nits

6 years agowintun: registry: revise value reading
Simon Rozman [Sat, 11 May 2019 04:21:02 +0000 (06:21 +0200)] 
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>
6 years agowintun: call HrRenameConnection in another thread
Jason A. Donenfeld [Fri, 10 May 2019 19:31:37 +0000 (21:31 +0200)] 
wintun: call HrRenameConnection in another thread

6 years agowintun: add LUID accessor
Jason A. Donenfeld [Fri, 10 May 2019 19:30:23 +0000 (21:30 +0200)] 
wintun: add LUID accessor

6 years agowintun: enumerate faster by using COMPATDRIVER instead of CLASSDRIVER
Jason A. Donenfeld [Fri, 10 May 2019 18:30:59 +0000 (20:30 +0200)] 
wintun: enumerate faster by using COMPATDRIVER instead of CLASSDRIVER

6 years agowintun: destroy devinfolist after usage
Jason A. Donenfeld [Fri, 10 May 2019 18:19:11 +0000 (20:19 +0200)] 
wintun: destroy devinfolist after usage

6 years agowintun: registry: replace REG_NOTIFY with NOTIFY
Simon Rozman [Fri, 10 May 2019 15:37:03 +0000 (17:37 +0200)] 
wintun: registry: replace REG_NOTIFY with NOTIFY

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agowintun: IpConfig is a MULTI_SZ, and fix errors
Jason A. Donenfeld [Fri, 10 May 2019 16:01:47 +0000 (18:01 +0200)] 
wintun: IpConfig is a MULTI_SZ, and fix errors

6 years agowintun: poll for device key
Jason A. Donenfeld [Fri, 10 May 2019 15:34:03 +0000 (17:34 +0200)] 
wintun: poll for device key

It's actually pretty hard to guess where it is.

6 years agowintun: fix scope of error object
Jason A. Donenfeld [Fri, 10 May 2019 14:59:24 +0000 (16:59 +0200)] 
wintun: fix scope of error object

6 years agowintun: wait for interface registry key on device creation
Simon Rozman [Thu, 9 May 2019 08:11:15 +0000 (10:11 +0200)] 
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>
6 years agoconn: remove scope when sanity checking IP address format
Jason A. Donenfeld [Thu, 9 May 2019 13:33:57 +0000 (15:33 +0200)] 
conn: remove scope when sanity checking IP address format

6 years agowintun: fix GUID leading zero padding
Simon Rozman [Thu, 9 May 2019 09:45:14 +0000 (11:45 +0200)] 
wintun: fix GUID leading zero padding

Signed-off-by: Simon Rozman <simon@rozman.si>
6 years agomod: update deps
Jason A. Donenfeld [Fri, 3 May 2019 07:37:29 +0000 (09:37 +0200)] 
mod: update deps

6 years agosetupapi: safer aliasing of slice types
Jason A. Donenfeld [Fri, 3 May 2019 07:34:00 +0000 (09:34 +0200)] 
setupapi: safer aliasing of slice types

6 years agowintun: work around GetInterface staleness bug
Jason A. Donenfeld [Thu, 2 May 2019 22:11:59 +0000 (00:11 +0200)] 
wintun: work around GetInterface staleness bug

6 years agowintun: don't retry when not creating
Jason A. Donenfeld [Thu, 2 May 2019 21:53:15 +0000 (23:53 +0200)] 
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.