Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-01-07 | wintun: do not load dll in init() | Jason A. Donenfeld | |
This prevents linking to wintun.dll until it's actually needed, which should improve startup time. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> | |||
2020-11-07 | wintun: ring management moved to wintun.dll | Simon Rozman | |
Signed-off-by: Simon Rozman <simon@rozman.si> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> | |||
2020-11-07 | wintun: load wintun.dll from RCDATA resource | Simon Rozman | |
Signed-off-by: Simon Rozman <simon@rozman.si> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> | |||
2020-11-07 | wintun: migrate to wintun.dll API | Simon Rozman | |
Rather than having every application using Wintun driver reinvent the wheel, the Wintun device/adapter/interface management has been moved from wireguard-go to wintun.dll deployed with Wintun itself. Signed-off-by: Simon Rozman <simon@rozman.si> | |||
2020-05-02 | global: update header comments and modules | Jason A. Donenfeld | |
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> | |||
2020-05-02 | wintun: make remaining HWID comparisons case insensitive | Simon Rozman | |
c85e4a410f27986a2967a49c0155633c716bf3ca introduced preliminary HWID checking to speed up Wintun adapter enumeration. However, all HWID are case insensitive by Windows convention. Furthermore, a device might have multiple HWIDs. When DevInfo's DeviceRegistryProperty(SPDRP_HARDWAREID) method returns []string, all strings returned should be checked against given hardware ID. This issue was discovered when researching Wintun and wireguard-go on Windows 10 ARM64. The Wintun adapter was created using devcon.exe utility with "wintun" hardware ID, causing wireguard-go fail to enumerate the adapter properly. Signed-off-by: Simon Rozman <simon@rozman.si> | |||
2019-10-17 | wintun: normalize variable names for their types | Jason A. Donenfeld | |
2019-10-17 | wintun: quickly ignore non-Wintun devices | Avery Pennarun | |
Some devices take ~2 seconds to enumerate on Windows if we try to get their instance name. The hardware id property, on the other hand, is available right away. Signed-off-by: Avery Pennarun <apenwarr@gmail.com> [zx2c4: inlined this to where it makes sense, reused setupapi const] | |||
2019-10-08 | wintun: expose version | Jason A. Donenfeld | |
2019-09-01 | wintun: take mutex first always | Jason A. Donenfeld | |
This prevents an ABA deadlock with setupapi's internal locks. | |||
2019-08-30 | wintun: put mutex into private namespace | Jason A. Donenfeld | |
2019-08-30 | wintun: take mutex so that deletion uses the right name | Jason A. Donenfeld | |
2019-08-29 | wintun: move ring constants into module | Jason A. Donenfeld | |
2019-08-29 | wintun: delete all interfaces is not used anymore | Jason A. Donenfeld | |
2019-08-29 | wintun: Wintun->Interface | Jason A. Donenfeld | |
2019-08-29 | wintun: keep reference to pool in wintun object | Jason A. Donenfeld | |
2019-08-29 | wintun: introduce adapter pools | Simon Rozman | |
This makes wintun package reusable for non-WireGuard applications. Signed-off-by: Simon Rozman <simon@rozman.si> | |||
2019-08-28 | wintun: simplify rename logic | Jason A. Donenfeld | |
2019-08-28 | wintun: give better errors when ndis interface listing fails | Jason A. Donenfeld | |
2019-08-28 | wintun: also check for numbered suffix and friendly name | Jason A. Donenfeld | |
2019-08-28 | wintun: upgrade deleting all interfaces and make it reusable | Simon Rozman | |
DeleteAllInterfaces() didn't check if SPDRP_DEVICEDESC == "WireGuard Tunnel". It deleted _all_ Wintun adapters, not just WireGuard's. Furthermore, the DeleteAllInterfaces() was upgraded into a new function called DeleteMatchingInterfaces() for selectively deletion. This will be used by WireGuard to clean stale Wintun adapters. Signed-off-by: Simon Rozman <simon@rozman.si> | |||
2019-08-27 | wintun: cleanup earlier | Jason A. Donenfeld | |
2019-08-27 | wintun: rename duplicate adapters instead of ourselves | Jason A. Donenfeld | |
2019-08-26 | wintun: match suffix numbers | Jason A. Donenfeld | |
2019-08-24 | wintun: make description consistent across fields | Jason A. Donenfeld | |
2019-08-22 | wintun: try multiple names until one isn't a duplicate | Jason A. Donenfeld | |
2019-08-21 | wintun: use nci.dll directly instead of buggy netshell | Jason A. Donenfeld | |
2019-08-20 | wintun: set friendly a bit better | Jason A. Donenfeld | |
This is still wrong, but NETSETUPPKEY_Driver_FriendlyName seems a bit tricky to use. | |||
2019-08-19 | wintun: also set friendly name after setting interface name | Jason A. Donenfeld | |
2019-08-19 | wintun: defer requires unique variable | Jason A. Donenfeld | |
2019-08-19 | wintun: set adapter description name | Jason A. Donenfeld | |
2019-08-02 | wintun: merge opening device registry key | Simon Rozman | |
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 | wintun: simplify checking reboot requirement | Simon Rozman | |
We never checked checkReboot() reported error anyway. Signed-off-by: Simon Rozman <simon@rozman.si> | |||
2019-08-02 | wintun: refactor `err == nil` error checking | Simon Rozman | |
Signed-off-by: Simon Rozman <simon@rozman.si> | |||
2019-08-02 | wintun: handle error for deadgwdetect | Jason A. Donenfeld | |
2019-07-23 | wintun: get interface path properly with cfgmgr | Jason A. Donenfeld | |
2019-07-23 | wintun: simplify resolution of dev node | Jason A. Donenfeld | |
2019-07-22 | wintun: enable sharing of pnp node | Jason A. Donenfeld | |
2019-07-19 | tun: windows: get rid of retry logic | Jason A. Donenfeld | |
Things work fine on Windows 8. | |||
2019-07-18 | tun: windows: switch to NDIS device object | Jason A. Donenfeld | |
2019-07-18 | wintun: calculate path of NDIS device object symbolic link | Jason A. Donenfeld | |
2019-06-18 | tun: windows: never retry open on Windows 10 | Jason A. Donenfeld | |
2019-06-11 | wintun: increase registry timeout | Jason A. Donenfeld | |
2019-06-10 | wintun: add helper for cleaning up | Jason A. Donenfeld | |
2019-06-10 | wintun: simplify error matching and remove dumb comments | Jason A. Donenfeld | |
2019-06-10 | wintun: fix comments and remove hwnd param | Jason A. Donenfeld | |
This now looks more idiomatic. | |||
2019-06-10 | wintun: allow controlling GUID | Jason A. Donenfeld | |
2019-06-06 | global: fixup TODO comment spacing | Jason A. Donenfeld | |
2019-06-06 | wintun: guid functions are upstream | Jason A. Donenfeld | |
2019-06-06 | wintun: simplify DeleteInterface method signature | Simon Rozman | |
Signed-off-by: Simon Rozman <simon@rozman.si> |