Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .github/workflows/msbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,20 @@ jobs:
msm\*.msi
msm\*.msm
gui\build\Release\*.*

tests:
runs-on: windows-2022

steps:
- uses: actions/checkout@v2
with:
submodules: true

- name: Configure CMake tests
run: cmake -S tests -B tests/build -A x64

- name: Build CMake tests
run: cmake --build tests/build --config Release

- name: Run CMake tests
run: ctest --test-dir tests/build --build-config Release --output-on-failure
5 changes: 2 additions & 3 deletions Driver.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -727,7 +727,7 @@ VOID OvpnEvtDeviceCleanup(WDFOBJECT obj) {

// OvpnCryptoUninitAlgHandles called outside of lock because
// it requires PASSIVE_LEVEL.
OvpnCryptoUninitAlgHandles(device->AesAlgHandle, device->ChachaAlgHandle);
OvpnCryptoUninitAlgHandles(device->AesAlgHandle, device->ChachaAlgHandle, device->HkdfAlgHandle);

// delete control device if there are no devices left
POVPN_DRIVER driverCtx = OvpnGetDriverContext(WdfGetDriver());
Expand Down Expand Up @@ -892,7 +892,7 @@ OvpnEvtDeviceAdd(WDFDRIVER wdfDriver, PWDFDEVICE_INIT deviceInit) {
device->IRoutesIPV4.Init(FALSE);
device->IRoutesIPV6.Init(TRUE);

GOTO_IF_NOT_NT_SUCCESS(done, status, OvpnCryptoInitAlgHandles(&device->AesAlgHandle, &device->ChachaAlgHandle));
GOTO_IF_NOT_NT_SUCCESS(done, status, OvpnCryptoInitAlgHandles(&device->AesAlgHandle, &device->ChachaAlgHandle, &device->HkdfAlgHandle));

// Initialize peers tables
RtlInitializeGenericTable(&device->Peers, OvpnPeerCompareByPeerIdRoutine, OvpnPeerAllocateRoutine, OvpnPeerFreeRoutine, NULL);
Expand All @@ -901,7 +901,6 @@ OvpnEvtDeviceAdd(WDFDRIVER wdfDriver, PWDFDEVICE_INIT deviceInit) {
RtlInitializeGenericTable(&device->PeersByTransport, OvpnPeerCompareByTransportRoutine, OvpnPeerAllocateRoutine, OvpnPeerFreeRoutine, NULL);

LOG_IF_NOT_NT_SUCCESS(status = OvpnAdapterCreate(device));

done:
LOG_EXIT();

Expand Down
1 change: 1 addition & 0 deletions Driver.h
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ struct OVPN_DEVICE {

BCRYPT_ALG_HANDLE AesAlgHandle;
BCRYPT_ALG_HANDLE ChachaAlgHandle;
BCRYPT_ALG_HANDLE HkdfAlgHandle;

_Guarded_by_(SpinLock)
OvpnSocket Socket;
Expand Down
4 changes: 2 additions & 2 deletions PropertySheet.props
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros">
<OVPN_DCO_VERSION_MAJOR>2</OVPN_DCO_VERSION_MAJOR>
<OVPN_DCO_VERSION_MINOR>7</OVPN_DCO_VERSION_MINOR>
<OVPN_DCO_VERSION_PATCH>1</OVPN_DCO_VERSION_PATCH>
<OVPN_DCO_VERSION_MINOR>8</OVPN_DCO_VERSION_MINOR>
<OVPN_DCO_VERSION_PATCH>0</OVPN_DCO_VERSION_PATCH>
</PropertyGroup>
<PropertyGroup />
<ItemDefinitionGroup>
Expand Down
2 changes: 0 additions & 2 deletions adapter.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,5 +56,3 @@ OvpnAdapterNotifyRx(NETADAPTER netAdapter);

VOID
OvpnAdapterSetLinkState(_In_ POVPN_ADAPTER adapter, NET_IF_MEDIA_CONNECT_STATE state);

#define OVPN_PAYLOAD_BACKFILL 26 // 2 + 4 + 4 + 16 -> tcp packet size + data_v2 + pktid + auth-tag;
Loading
Loading