Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

github.com/SagerNet/wireguard-go

Mirror only. Official repository is at https://git.zx2c4.com/wireguard-go
https://github.com/SagerNet/wireguard-go

tun: match windows CreateTUN signature to the Linux variant

Signed-off-by: Avery Pennarun <[email protected]>
[zx2c4: fix default value]

1b6c8ddbe8f2b9ef0b07b4d5a97443c67ee2e0fd authored about 5 years ago by Avery Pennarun <[email protected]>
rwcancel: handle EINTR and EAGAIN in unixSelect()

On my Chromebook (Linux 4.19.44 in a VM) and on an AWS EC2
machine, select() was sometimes retur...

0abb6b668c708aa84daba4b036e536fd76a8b1c5 authored about 5 years ago by Avery Pennarun <[email protected]>
device: test packets between two fake devices

Signed-off-by: David Crawshaw <[email protected]>

540d01e54ae472aa395ff1869af9de91171cdd7b authored about 5 years ago by David Crawshaw <[email protected]>
version: bump snapshot

f2ea85e9f9921bc29a7dcb2007212b153540c01a authored about 5 years ago by Jason A. Donenfeld <[email protected]>
Makefile: remove v prefix

222f0f8000e80ffff3253fac9990ee61f4e64398 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: expose version

1f146a5e7ad9081c79026339c2ad82f357743d66 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
uapi: allow preventing creation of new peers when updating

This enables race-free updates for wg-dynamic and similar tools.

Suggested-by: Thomas Gschwantn...

f2501aa6c8c0e658b0c026201de3e9fdb7697593 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
mod: bump versions

cb8d01f58a0057b437b1a448f9d8ba25bcc6d8da authored over 5 years ago by Jason A. Donenfeld <[email protected]>
winpipe: use x/sys/windows instead of syscall

01f8ef4e84a0354d33c32130f11c88d37d5f514d authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: use correct length for security attributes

70f6c42556afad75fa5c9734fe02cd8d2679ed0b authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: unify error message format

bb0b2514c0533edb3c4670cc01bdec735c8e2704 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
version: bump snapshot

7c97fdb1e34babf2697a815b8381037220e0c19b authored over 5 years ago by Jason A. Donenfeld <[email protected]>
main: simplify warnings

84b5a4d83d14189fe5898bd896680e7acde2c028 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: openbsd: check for interface already being up

In some cases, we operate on an already-up interface, or the user brings
up the interface before...

4cd06c0925ceb3dccd07b5ca1bdcdd6c24cfc77b authored over 5 years ago by Jason A. Donenfeld <[email protected]>
namespaceapi: AddSIDToBoundaryDescriptor modifies the handle

d12eb91f9a309a30dd78e89ff71050842d4a4e6e authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: take mutex first always

This prevents an ABA deadlock with setupapi's internal locks.

73d3bd9cd5e425c7422084172e63ed2eaa87d8ec authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: consider abandoned mutexes as released

f3dba4c1948e7225c61e8561abb50d0a876bd737 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
ipc: windows: use protected prefix

7937840f9631fbaaab33bdbad67040b28f5d0387 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
winpipe: enforce ownership of client connection

e4b957183c4a330f020f5188f3b30b59355efb80 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: put mutex into private namespace

950ca2ba8c026be809ced2438f89ec9146734cf7 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
namespaceapi: fix mistake

df2bf34373467cadab4f37b1a3c67eee45e677b4 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: take mutex so that deletion uses the right name

14df9c3e75fce5dcb709e46f860838cc88d4033a authored over 5 years ago by Jason A. Donenfeld <[email protected]>
namespaceapi: initial version

Signed-off-by: Simon Rozman <[email protected]>

a12b76578443b8f3f237d1a3730d829c9906a010 authored over 5 years ago by Simon Rozman <[email protected]>
wintun: move ring constants into module

353f0956bccf4919f7764166f1dd0f2c8bb7cca2 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: delete all interfaces is not used anymore

fa7763c268d2f5b93aa76f673ae0db7e740cf08d authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: Wintun->Interface

d94bae834882e6579f09db46b60cf9a1c46dac8a authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: keep reference to pool in wintun object

7689d093362b6c560c7093c14aea3c2d88aeb84d authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: introduce adapter pools

This makes wintun package reusable for non-WireGuard applications.

Signed-off-by: Simon Rozman ...

69c26dc258958be54513bb1d8d8e489d61690e82 authored over 5 years ago by Simon Rozman <[email protected]>
wintun: simplify rename logic

e862131d3cf56a5db53722648c04051c064b22a8 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: give better errors when ndis interface listing fails

da28a3e9f3abc3e117a777452ba887090fd0ad98 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: also check for numbered suffix and friendly name

3bf3322b2c5b27aca852b12c3fabb2ce91d6f445 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: upgrade deleting all interfaces and make it reusable

DeleteAllInterfaces() didn't check if SPDRP_DEVICEDESC == "WireGuard
Tunnel". It deleted _all_ W...

7305b4ce935828da5c2081c69a6b554a8c15ed53 authored over 5 years ago by Simon Rozman <[email protected]>
wintun: rename duplicate adapters instead of ourselves

7fbb24afaac9c89c98db89f7773ce82c919c520c authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: cleanup earlier

26fb615b11a581e399771448c5ae19a01e7be7f2 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: match suffix numbers

d9008ac35cc9eff988680895a81445ad6b049d65 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
device: getsockname on linux to determine port

It turns out Go isn't passing the pointer properly so we wound up with a
zero port every time.

f8198c042810b2c512c610654272db845e32b75e authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: make description consistent across fields

0c540ad60e6942f0c8458d8b9b5ceb2d76a0d29b authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: try multiple names until one isn't a duplicate

3cedc22d7b49be8ca00dc549c79de9e4a2d3df5b authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: use nci.dll directly instead of buggy netshell

68fea631d8e97aa7395b944916e569cf66553e73 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: set friendly a bit better

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

ef23100a4f86948e0466dce980d8604ad95f13df authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: also set friendly name after setting interface name

eb786cd7c11335708133624eda678dfad54048d6 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: defer requires unique variable

333de75370236c0109b15814a095f28d5484ec98 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: set adapter description name

d20459dc6916fa3d4cd4bc161864111195ffecd3 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: don't spin unless we really need it

01786286c1dbda06cf74aa4b389a9f43fcbfb644 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
version: bump snapshot

b16dba47a7165cc9cfd6530a4548e1428170fe52 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
device: drop lock before expiring keys

4be9630ddc26090fdb62915def925fc13f98519f authored over 5 years ago by Jason A. Donenfeld <[email protected]>
uapi: skip peers with invalid keys

4e3018a96725345d3b486ceb36dc143eb1b645c7 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: spin for only a millisecond/80

Performance stays the same as before.

b4010123f74470eeca0551a151dea3e7a7381bcc authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: simplify checking reboot requirement

We never checked checkReboot() reported error anyway.

Signed-off-by: Simon Rozman <simon@rozman...

f5e54932e600ca94ef498a6f98c73c184979533b authored over 5 years ago by Simon Rozman <[email protected]>
wintun: merge opening device registry key

This also introduces waiting for key to appear on initial access.

See if this resolves the issu...

1ff37e2b0706143c5da7131ae13f45d0d1882344 authored over 5 years ago by Simon Rozman <[email protected]>
wintun: refactor `err == nil` error checking

Signed-off-by: Simon Rozman <[email protected]>

73698066d142a82468aa1c4c2bef52bbef919a7c authored over 5 years ago by Simon Rozman <[email protected]>
wintun: handle error for deadgwdetect

05ece4d167cf26c95ef58cc80e912dbd43d44c86 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
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 t...

6d78f895579b114c93bd493ad8d61316fc5dd15a authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: get interface path properly with cfgmgr

a2249449d60f69c1878612e2c2c0b9b37b10ce1b authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: style

eeeac287ef4e46a1fcd3d15a1f8942dc136ae601 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: simplify resolution of dev node

b5a7cbf069678ccdca7fe3997f6b44ffc3446109 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: enable sharing of pnp node

50cd522cb0d8e384a4f46ec4155d7bed37cd57a6 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: close event handle on shutdown

5ba866a5c8dfedb2efd54ae371090b9a05cedd1a authored over 5 years ago by Jason A. Donenfeld <[email protected]>
ipc: windows: match SDDL of WDK and make monkeyable

2f101fedec51ac87e53fc9c00720f0069893b9ee authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: get rid of retry logic

Things work fine on Windows 8.

3341e2d4448e51152c2e919f0a694c5667fa91dd authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: use specific IOCTL code

1b550f658325d7525cc4357024352599c6796d32 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
device: do not crash on nil'd bind in windows binding

7bc0e118317d20974107a8a0f17cf57d400f4791 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: open file at startup time

31ff9c02fec42f38b0e444c41744887a1b9fedaf authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: silently drop packet when ring is full

1e39c33ab1abd8cd10c912ef8df48c7e1a4b1590 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: switch to NDIS device object

6c50fedd8eecc6cb06d8da47514794eb211d5b3a authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: spin for a bit before falling back to event object

9ea9a921178fe6b0e1e823cea2cd73d654217b4c authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: calculate path of NDIS device object symbolic link

298d759f3efba6b90ea70838d190959b39c5be57 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
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@zx2c...

4d5819183e218e040fa0a73df560b4a4a9a768d7 authored over 5 years ago by Michael Zeltner <[email protected]>
tun: windows: implement ring buffers

Signed-off-by: Simon Rozman <[email protected]>

2e24e7dcae421c45aadf4c052a33b784ad320014 authored over 5 years ago by Simon Rozman <[email protected]>
device: immediately rekey all peers after changing device private key

Reported-by: Derrick Pallas <[email protected]>

a961aacc9f4dff9e617197c6433f8c9628928132 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
README: update windows info

b0cf53b0787f63c643c7fe009527b5f4af1bd1e1 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: registration of write buffer no longer required

5c3d333f10c7238cae9b8ed1aabdb8c8ab6a7ebc authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: decrease alignment to 4

d8448f8a0298b16cc128bf0e64963852964d2e78 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: delay initial write

Otherwise we provoke Wintun 0.3.

13abbdf14bda7ef4ee5739d28bb61dc449cf67bc authored over 5 years ago by Jason A. Donenfeld <[email protected]>
device: receive: uniform message for source address check

f361e59001c8e6d8e61c82151a70c6006dac71d4 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: packetNum is unused

b844f1b3cc2c37ca76427572d8fc8d7977c0274d authored over 5 years ago by Jason A. Donenfeld <[email protected]>
device: receive: simplify flush loop

dd8817f50e5657259b7ed3e1af3f8c370525cf2f authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: inform wintun of maximum buffer length for writes

5e6eff81b6f7f18b3dd24bec03ea71f009a3e938 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: never retry open on Windows 10

c69d02664924e11ffc5e6728638216a26b81c4ce authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: remove TUN prefix from types to reduce stutter elsewhere

Signed-off-by: Matt Layher <[email protected]>

1f48971a80f48257e478e532f6971d0557026120 authored over 5 years ago by Matt Layher <[email protected]>
device: update transfer counters correctly

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

3371f8dac6fe6bbd7522a8316b50f6473012e302 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: increase registry timeout

41fdbf09710b7987b442e8fd8310568f2790c15b authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: add helper for cleaning up

03eee4a7782ddefa49c682b4de9c13bb5099892c authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: simplify error matching and remove dumb comments

700860f8e697b187a7bbd7b226469a1de0818456 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: fix comments and remove hwnd param

This now looks more idiomatic.

a304f69e0dde3984b131d1cf29d22f19b4e5e083 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
setupapi: add SetDeviceRegistryPropertyString description

Signed-off-by: Simon Rozman <[email protected]>

baafe92888c2485e31594f57c37ee29ca8c12b4e authored over 5 years ago by Simon Rozman <[email protected]>
setupapi: unify ERROR_INSUFFICIENT_BUFFER handling

Signed-off-by: Simon Rozman <[email protected]>

a1a97d1e4120fa1c137e0cc647b3c657019780fb authored over 5 years ago by Simon Rozman <[email protected]>
wintun: allow controlling GUID

e924280baa36f6fd80f4a65f2fb6223a4965b281 authored over 5 years ago by Jason A. Donenfeld <[email protected]>
setupapi: add DeviceInstanceID()

bb3f1932faa4f75800a145e7f0476d8a8dcf104a authored over 5 years ago by Jason A. Donenfeld <[email protected]>
global: fixup TODO comment spacing

eaf17becfa70c31bcfb6f195e8d68cb5b720ec4a authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: guid functions are upstream

6d8b68c8f3cd7c9e9560c23e5f20e3ec4bc4fb6e authored over 5 years ago by Jason A. Donenfeld <[email protected]>
wintun: simplify DeleteInterface method signature

Signed-off-by: Simon Rozman <[email protected]>

c2ed133df80392a1592a6b0b79228041dd725427 authored over 5 years ago by Simon Rozman <[email protected]>
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.

108c37a05639a5fdbef2112a046ed7d7b1f2c27a authored over 5 years ago by Jason A. Donenfeld <[email protected]>
tun: windows: obsolete 256 packets per exchange buffer limitation

Signed-off-by: Simon Rozman <[email protected]>

e4b0ef29a16479a0d7f44968e9e0a2d5603a5783 authored over 5 years ago by Simon Rozman <[email protected]>
setupapi, wintun: replace syscall with golang.org/x/sys/windows

Signed-off-by: Simon Rozman <[email protected]>

625e445b22afbb4dab20eed07640388ea36b332d authored over 5 years ago by Simon Rozman <[email protected]>
setupapi: define PropChangeParams struct

This structure is required for calling DIF_PROPERTYCHANGE installer
class.

Signed-off-by: Simon...

014f736480dae2dc8b81a7206831058c2c451ccd authored over 5 years ago by Simon Rozman <[email protected]>
wintun: set DI_QUIETINSTALL flag for GUI-less device management

Signed-off-by: Simon Rozman <[email protected]>

85b85e62e52198045ed853b81617db1f8c83c65f authored over 5 years ago by Simon Rozman <[email protected]>
device: use bytes.Equal for equality check, simplify assertEqual

Signed-off-by: Matt Layher <[email protected]>

8d76ac8cc47cbe4072b2f5a48ede21c3e2d5ced0 authored over 5 years ago by Matt Layher <[email protected]>
device: remove redundant return statements

More staticcheck fixes:

$ staticcheck ./... | grep S1023
device/noise-helpers.go:45:2: redundan...

43a4589043faa6f81c2148e462e2b739e22ccb55 authored over 5 years ago by Matt Layher <[email protected]>
device, ratelimiter: replace uses of time.Now().Sub() with time.Since()

Simplification found by staticcheck:

$ staticcheck ./... | grep S1012
device/cookie.go:90:5: sh...

18b6627f33883e28dd69b2990c52359002856694 authored over 5 years ago by Matt Layher <[email protected]>