Jason A. Donenfeld
ce83279187
project: license prebuilt binaries more permissively
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-12-16 18:23:41 +01:00
Jason A. Donenfeld
e73613ee24
api: remove return value from logger function
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-10 22:06:25 +01:00
Jason A. Donenfeld
9f3d466791
api: remove WintunOpenAdapterDeviceObject
...
Discourage use of kernel interface, which gives us more flexibility if
we ever want to change it.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-05 16:58:43 +01:00
Jason A. Donenfeld
1e00f310ec
example: raise to 4MiB
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-05 16:58:43 +01:00
Jason A. Donenfeld
82c41bdb4b
api: rearrange wintun.h to have better grouping and improve docs
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-05 16:58:43 +01:00
Jason A. Donenfeld
1285b8f528
api: rename WintunGetAdapter to WintunOpenAdapter
...
"Create" and "Open" natural names for these.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-05 16:58:43 +01:00
Jason A. Donenfeld
e9e790605a
api: rename ReceiveRelease to ReleaseReceivePacket
...
This makes the API parallel:
Wintun*Allocate*SendPacket -> WintunSendPacket
WintunReceivePacket -> Wintun*Release*ReceivePacket
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-05 16:58:43 +01:00
Jason A. Donenfeld
6afbb300b9
README: improve code example
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-05 16:58:43 +01:00
Simon Rozman
abbf658211
api: fix typo in ring-management function prototype declarations
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-11-05 08:36:28 +01:00
Jason A. Donenfeld
317a91bcbe
README: add reference and describe info
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-04 21:37:33 +01:00
Jason A. Donenfeld
dc99f96da7
api: rename GetVersion to GetRunningDriverVersion
...
This makes our intentions a lot more clear, and in case we ever add
other version functions, makes the forward path simpler.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-04 14:53:39 +01:00
Jason A. Donenfeld
2af7fbd64a
api: use 'open' name since caller must close handle
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-11-03 12:31:49 +01:00
Jason A. Donenfeld
42062fe554
Bump date headers
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-10-31 19:11:51 +01:00
Simon Rozman
9957396dc7
api: upgrade source analysis annotations
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-10-31 19:11:50 +01:00
Simon Rozman
e11897e343
api: depretiate WintunIsPacketAvailable()
...
Spinning on the WintunReceivePacket() while it returns
ERROR_NO_MORE_ITEMS achieves the same.
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-10-31 10:41:46 +01:00
Simon Rozman
2439b05212
api: upgrade ring management
...
- Return pointer to ring buffer with packet data allowing clients to
read/write directly. This eliminates one memcpy().
- Make sending/receiving packets thread-safe.
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-10-31 10:15:15 +01:00
Simon Rozman
202f1dc9b8
api: update README.md
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2020-10-31 06:55:58 +01:00
Jason A. Donenfeld
736131960f
msi-example: add instructions and sample code
2019-09-18 15:19:09 -06:00
Jason A. Donenfeld
e8e5a42e98
README: clarify spinning
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-08-22 11:27:57 +02:00
Jason A. Donenfeld
85a8076d08
Spin less and more efficiently
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-08-04 07:06:50 +00:00
Jason A. Donenfeld
0e5c1a7a94
Shorten README
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-08-02 17:21:26 +02:00
Jason A. Donenfeld
71afd84033
Document how to get file handle
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-08-02 13:22:35 +02:00
Jason A. Donenfeld
366aaf2820
Rearrange README and add additional MSM info
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-08-02 11:57:30 +02:00
Simon Rozman
afdbc75bf9
Resolve SDV reported "defect"
...
NdisMGetDeviceProperty() should always return non-NULL
FunctionalDeviceObject according to _Outptr_opt_. An explicit
FunctionalDeviceObject NULL check has been added to keep the SDV happy
and not calling our driver "defective".
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-08-02 09:43:32 +00:00
Jason A. Donenfeld
970e22d8e4
Use more specific IOCTL code
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-07-19 06:31:26 +00:00
Jason A. Donenfeld
58ce3c5000
Piggy-back on top of NDIS' device object instead of adding our own
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-07-18 10:34:38 +00:00
Jason A. Donenfeld
bf51c91e3e
README: clarify ring usage
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-07-17 21:13:39 +00:00
Simon Rozman
66e51bd08f
Switch to ring buffers for exchanging packets
...
This demonstrates the use of ring buffers in its simplest, purest form.
No performance optimizations were made.
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-07-16 20:06:54 +00:00
Jason A. Donenfeld
830df36cd3
README: correct path of device
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Reported-by: Shay Sharon <Shay.Sharon@audiocodes.com>
2019-07-09 11:10:17 +02:00
Jason A. Donenfeld
7437155446
Decrease alignment requirements to 4
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-07-05 06:15:46 +00:00
Jason A. Donenfeld
a0f031c692
Do not use _RESOURCES but rather allocate our own copy
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Fixes: 09dc932
("Create copies of NBLs to complete them faster")
2019-07-05 06:15:46 +00:00
Jason A. Donenfeld
007ea09d1b
Map user buffer only once
...
This avoids needless page table modifications and also lets us enforce
having writable pages.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-07-03 08:50:30 +00:00
Simon Rozman
ca120aa1c0
Declare NDIS 6.83 compliant
...
After confirming with Microsoft Documentation that Wintun is already
NDIS 6.83 compliant, we declare it so.
In order to build NDIS 6.83 miniport driver, WDK for Windows 10, version
1903 is required: documentation updated.
https://docs.microsoft.com/en-us/windows-hardware/drivers/network/introduction-to-ndis-6-81
https://docs.microsoft.com/en-us/windows-hardware/drivers/network/introduction-to-ndis-6-82
https://docs.microsoft.com/en-us/windows-hardware/drivers/network/introduction-to-ndis-6-83
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-07-03 08:50:30 +00:00
Jason A. Donenfeld
9ee4310026
Document toolchain requirement
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-06-07 13:53:44 +02:00
Simon Rozman
6c405efc42
README: 256 packets per exchange buffer limitation is obsolete
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-07 12:28:07 +02:00
Simon Rozman
17e9e17826
Upgrade to VS2019 and update CSQ locking for analysis
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-06-03 12:47:05 +02:00
Jason A. Donenfeld
b13ecdf97a
README: Fix padding calculation
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-05-15 12:13:25 +02:00
Jason A. Donenfeld
aeb0657dff
installer: put whql assets in reasonable place
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-04-26 14:53:20 +02:00
Jason A. Donenfeld
c91cac07f9
Note sha256 issue
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-04-26 14:10:56 +02:00
Jason A. Donenfeld
a0491c6b08
installer: fix typos
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-04-26 14:07:32 +02:00
Simon Rozman
5094737f8c
Split driver setup to EV signed (<Win10) and WHQL signed (>=Win10)
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-04-26 13:44:44 +02:00
Jason A. Donenfeld
f2c3720aa7
README: only specify SHA1 in certificate specifier
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-04-25 08:05:19 +02:00
Jason A. Donenfeld
66525255d0
README: Be explicit about timestamp server
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2019-04-25 07:56:16 +02:00
Simon Rozman
56424d52f7
Extend MSBuild project to build all supported platforms at once
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-04-23 13:32:18 +02:00
Jason A. Donenfeld
daba4f4c7d
README: fix up documentation
2019-04-20 11:37:09 +09:00
Simon Rozman
9f31f27840
Switch from NMake to MSBuild
...
This allows common version and other configuration in wintun.props.
- MSM packaging migrated to WiX MSBuild project and extended to support
digital signing
- Building supports single Platform|Configuration per run - again :(
- wintun.vcxproj cleanup
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-04-19 15:25:44 +02:00
Simon Rozman
e4f4d71477
Make Makefile build all supported platforms
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-04-18 15:32:09 +02:00
Simon Rozman
1031ad44da
Add MSM packaging support
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-04-16 16:11:24 +02:00
Simon Rozman
84f3c3e455
Add ARM64 compiling support
...
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-04-15 13:35:23 +02:00
Simon Rozman
afef39616c
Revise architecture naming convention
...
Adopt PROCESSOR_ARCHITECTURE environment variable platform designation,
make it lowercase, and unify output folder naming.
Signed-off-by: Simon Rozman <simon@rozman.si>
2019-04-15 13:35:23 +02:00