aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-02-05Replace SetupDiClassNameFromGuid() with SetupDiClassNameFromGuidEx()Simon Rozman
The former is only a subset of the later. To minimize future maintenance, we'll provide support for extended version only. Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Add support for setupapi.SetupDiClassNameFromGuid()Simon Rozman
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Stop checking for valid handle in DevInfo.Close()Simon Rozman
User should not have called or deferred the Close() method should SetupDiGetClassDevsEx() return an error (and invalid handle). And even if user does that, a SetupDiDestroyDeviceInfoList(INVALID_HANDLE_VALUE) is harmless. It just returns ERROR_INVALID_HANDLE - we have a unit test for this in TestSetupDiDestroyDeviceInfoList(). Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Add support for setupapi.SetupDiCallClassInstaller()Simon Rozman
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Add support for setupapi.SetupDi(Get|Set)ClassInstallParams()Simon Rozman
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Add support for setupapi.SetupDi(Get|Set)DeviceInstallParams()Simon Rozman
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Add support for setupapi.SetupDiOpenDevRegKey()Simon Rozman
Furthermore setupapi.DevInfoData has been obsoleted. SetupDiEnumDeviceInfo() fills existing SP_DEVINFO_DATA structure now. As other functions of SetupAPI use SP_DEVINFO_DATA, converting it to DevInfoData and back would hurt performance. Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Add support for setupapi.SetupDiEnumDeviceInfo()Simon Rozman
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Update exported types and functions annotationsSimon Rozman
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Add support for setupapi.SetupDiGetDeviceInfoListDetail()Simon Rozman
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Finish support for setupapi.SetupDiGetClassDevsEx()Simon Rozman
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Introduce SetupAPI - Windows device and driver management APISimon Rozman
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-02-05Import windows scafoldingJason A. Donenfeld
2019-02-05noise: store clamped key instead of raw keyJason A. Donenfeld
2019-02-05tai64n: whiten nano secondsJason A. Donenfeld
Avoid being too precise of a time oracle.
2019-02-05uapi: Simpler function signatureJason A. Donenfeld
2019-02-05Extend structs rather than embed, when possibleJason A. Donenfeld
2019-02-05Update copyrightJason A. Donenfeld
2018-12-25Properly bubble up setsockopt error from closureJason A. Donenfeld
2018-12-22version: bump snapshot0.0.20181222Jason A. Donenfeld
2018-12-19Make error messages consistentJason A. Donenfeld
2018-12-11Freebsd is finally normal in sys/unixJason A. Donenfeld
2018-12-11Separate out mark setting for WindowsJason A. Donenfeld
2018-12-10Use upstream's xchacha20poly1305Jason A. Donenfeld
2018-12-10Update go x/ librariesJason A. Donenfeld
Android 9's Bionic disallows inotify_init with seccomp, so we want the latest unix change, and while we're at it, we update the others too. Reported-by: Berk D. Demir <bdd@mindcast.org> Go CL: https://go-review.googlesource.com/c/sys/+/153318 Fixes: https://lists.zx2c4.com/pipermail/wireguard/2018-December/003642.html
2018-12-06tun: remove nonblock hack for linuxJason A. Donenfeld
This is no longer necessary and actually breaks things Reported-by: Chris Branch <cbranch@cloudflare.com>
2018-11-08tai64n: use proper nanoseconds offsetJason A. Donenfeld
The code before was obviously wrong. Reported-by: Vlad Krasnov <vlad@cloudflare.com>
2018-11-06Use darwin tun on iosJason A. Donenfeld
2018-11-05uapi: typoJason A. Donenfeld
2018-11-01receive: make started status uniformJason A. Donenfeld
2018-10-18send: do not unlock already freed objectJason A. Donenfeld
2018-10-18version: bump snapshot0.0.20181018Jason A. Donenfeld
2018-10-17Makefile: rename default to allJason A. Donenfeld
2018-10-17tun: only call .Fd() onceJason A. Donenfeld
Doing so tends to make the tunnel blocking, so we only retrieve it once before we call SetNonblock, and then cache the result.
2018-10-12Use go modules alwaysJason A. Donenfeld
2018-10-12Do not build if nothing to doJason A. Donenfeld
2018-10-09Switch to go modulesJason A. Donenfeld
2018-10-01version: bump snapshot0.0.20181001Jason A. Donenfeld
2018-10-01Adding missing queueconstants fileJason A. Donenfeld
2018-09-25Fix transport message length checkChris Branch
wireguard-go has a bad length check in its transport message handling. Although it cannot be exploited because of another length check earlier in the function, this should be fixed regardless.
2018-09-25Make it easy to restrict queue sizes moreJason A. Donenfeld
2018-09-24Fix shutdown racesJason A. Donenfeld
2018-09-24More poolingJason A. Donenfeld
2018-09-22Fixup buffer freeingJason A. Donenfeld
2018-09-16send: more precise padding calculationJason A. Donenfeld
2018-09-16device: preallocated buffers schemeJason A. Donenfeld
Not useful now but quite possibly later.
2018-09-16Change queueing drop order and fix memory leaksJason A. Donenfeld
If the queues are full, we drop the present packet, which is better for network traffic flow. Also, we try to fix up the memory leaks with not putting buffers from our shared pool.
2018-09-16send: use accessor function for buffer poolJason A. Donenfeld
2018-09-16Fixed port overwrite issue on kernels without ipv6Mathias Hall-Andersen
Fixed an issue in CreateBind for Linux: If ipv6 was not supported the error code would be correctly identified as EAFNOSUPPORT and ipv4 binding attempted. However the port would be set to 0, which results in the subsequent create4 call requesting a random port rather than the one provided to CreateBind. This issue was identified by: Kent Friis <leeloored@gmx.com>
2018-09-16global: fix up copyright headersJason A. Donenfeld