From 3c5ffa744e38436cd7c40d09a525da018f7e9270 Mon Sep 17 00:00:00 2001 From: Steven Tracey Date: Sun, 27 Oct 2024 19:33:33 -0400 Subject: [PATCH] Build Test --- .gitea/workflows/build.yml | 54 +++ .gitignore | 5 + TVPN.exe.manifest | 10 + build.gradle | 22 +- installer-script.iss | 51 ++ src/main/cpp/CMakeLists.txt | 4 +- src/main/cpp/example.c | 444 ++++++++++++++++++ .../cpp/tech_nevets_tvpn_wg_WireGuardJNI.h | 117 ----- src/main/cpp/wireguard_wrapper.c | 260 ++++++---- src/main/java/tech/nevets/tvpn/Main.java | 14 +- src/main/java/tech/nevets/tvpn/Utils.java | 16 +- .../java/tech/nevets/tvpn/cli/Command.java | 12 + .../nevets/tvpn/cli/CommandBrigadier.java | 49 ++ .../nevets/tvpn/cli/commands/HelpCmd.java | 52 ++ .../cli/commands/InstallTunnelServiceCmd.java | 71 +++ .../commands/UninstallTunnelServiceCmd.java | 28 ++ .../java/tech/nevets/tvpn/ui/UIManager.java | 2 +- .../tech/nevets/tvpn/wg/WireGuardJNI.java | 12 +- src/main/resources/icon.ico | Bin 0 -> 16958 bytes src/main/resources/icon.png | Bin 0 -> 221052 bytes 20 files changed, 1006 insertions(+), 217 deletions(-) create mode 100644 .gitea/workflows/build.yml create mode 100644 TVPN.exe.manifest create mode 100644 installer-script.iss create mode 100644 src/main/cpp/example.c delete mode 100644 src/main/cpp/tech_nevets_tvpn_wg_WireGuardJNI.h create mode 100644 src/main/java/tech/nevets/tvpn/cli/Command.java create mode 100644 src/main/java/tech/nevets/tvpn/cli/CommandBrigadier.java create mode 100644 src/main/java/tech/nevets/tvpn/cli/commands/HelpCmd.java create mode 100644 src/main/java/tech/nevets/tvpn/cli/commands/InstallTunnelServiceCmd.java create mode 100644 src/main/java/tech/nevets/tvpn/cli/commands/UninstallTunnelServiceCmd.java create mode 100644 src/main/resources/icon.ico create mode 100644 src/main/resources/icon.png diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml new file mode 100644 index 0000000..4ef8594 --- /dev/null +++ b/.gitea/workflows/build.yml @@ -0,0 +1,54 @@ +name: TVPN Actions Workflow +run-name: Deploy to ${{ inputs.deploy_target }} by ${{ gitea.actor }} +on: [push] + +jobs: + build: + runs-on: windows-10 + steps: + - uses: actions/checkout@v4 + #- name: Setup JDK 21 + # uses: actions-setup-java@v4.4.0 + # with: + # java-version: 21 + # distribution: 'temurin' + - name: Test Java + run: java --version + - name: Configure Git + run: | + git config --global user.email "git@nevets.tech" + git config --global user.name "Gitea Actions" + - name: Build TVPN Jar + run: .\gradlew.bat clean shadowJar createExe + - name: Copy Header to C Dir + run: | + cp build/generated/sources/headers/java/main/tech_nevets_tvpn_wg_WireGuardJNI.h src/main/cpp/ + - name: Build DLL + run: | + cmake -DCMAKE_BUILD_TYPE=Release -G "CodeBlocks - MinGW Makefiles" -S ./src/main/cpp -B ./src/main/cpp/build + cmake --build ./src/main/cpp/build --target wireguard_wrapper -- -j 14 + # uses: actions/cmake-action@v2.0.0 + # with: + # source-dir: src/main/cpp + # output-dir: src/main/cpp/build + - name: Prepare artifacts + run: | + Get-ChildItem -Path artifacts -Recurse | Remove-Item -force -recurse + if (Test-Path -Path .\artifacts) { Remove-Item -Path .\artifacts -Recurse -Force } + $version = (Select-String -Path "build.gradle" -Pattern "^\s*version\s*=\s*'([^']+)'" | ForEach-Object { $_.Matches[0].Groups[1].Value }) + echo Version: $version + New-Item -Path "artifacts" -ItemType Directory + Copy-Item -Path "./build/libs/TVPN-$version-all.jar" -Destination "./artifacts/TVPN-$version.jar" -Verbose + Copy-Item -Path "./build/launch4j/TVPN.exe" -Destination "./artifacts/TVPN.exe" -Verbose + Copy-Item -Path "./src/main/cpp/build/libwireguard_wrapper.dll" -Destination "./artifacts/libwireguard_wrapper.dll" -Verbose + Copy-Item -Path "./libs/tunnel.dll" -Destination "./artifacts/tunnel.dll" -Verbose + Copy-Item -Path "./libs/wireguard.dll" -Destination "./artifacts/wireguard.dll" -Verbose + - name: Create Installer + run: | + git clone https://git.nevets.tech/Steven/TVPN-jre.git jre + ISCC /DMyAppVersion=$version "./installer-script.iss" + - name: Upload artifacts + uses: actions/upload-artifact@v3 + with: + name: artifacts + path: artifacts\* diff --git a/.gitignore b/.gitignore index 2d797e8..3a46706 100644 --- a/.gitignore +++ b/.gitignore @@ -152,3 +152,8 @@ fabric.properties # Android studio 3.1+ serialized cache file .idea/caches/build_file_checksums.ser +src/main/cpp/tech_nevets_tvpn_wg_WireGuardJNI.h + +jre/ +src/main/cpp/build +inno/ \ No newline at end of file diff --git a/TVPN.exe.manifest b/TVPN.exe.manifest new file mode 100644 index 0000000..3119ef3 --- /dev/null +++ b/TVPN.exe.manifest @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/build.gradle b/build.gradle index 262d827..a889fc5 100644 --- a/build.gradle +++ b/build.gradle @@ -1,13 +1,18 @@ plugins { id 'java' id 'com.github.johnrengelman.shadow' version '8.1.1' + id 'edu.sc.seis.launch4j' version '3.0.6' } group = 'tech.nevets' -version = '0.2.0' +version = '0.3.0' repositories { mavenCentral() + maven { + name = "Gitea" + url = uri("https://git.nevets.tech/api/packages/Steven/maven") + } } dependencies { @@ -18,6 +23,8 @@ dependencies { //implementation "com.formdev:flatlaf:3.5.1" implementation files("libs/gson-2.11.0.jar") //implementation "com.google.code.gson:gson:2.11.0" + + implementation "tech.nevets:JConf:0.1.0:no-deps" } tasks.withType(JavaCompile).configureEach { @@ -33,4 +40,17 @@ jar { 'Main-Class': 'tech.nevets.tvpn.Main' ) } +} + +launch4j { + mainClassName = 'tech.nevets.tvpn.Main' + outfile = 'TVPN.exe' + jarTask = project.tasks.shadowJar + fileDescription = 'TVPN Client' + icon = "${projectDir}/src/main/resources/icon.ico" + productName = 'TVPN' + version = "$this.version" + textVersion = "$this.version" + bundledJrePath = './jre' + manifest = "${projectDir}/TVPN.exe.manifest" } \ No newline at end of file diff --git a/installer-script.iss b/installer-script.iss new file mode 100644 index 0000000..f09c050 --- /dev/null +++ b/installer-script.iss @@ -0,0 +1,51 @@ +; Script generated by the Inno Setup Script Wizard. +; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! + +#define MyAppName "TVPN" +#define MyAppPublisher "nevetS Tech" +#define MyAppURL "https://git.nevets.tech/Steven/TVPN" +#define MyAppExeName "TVPN.exe" + +[Setup] +; NOTE: The value of AppId uniquely identifies this application. Do not use the same AppId value in installers for other applications. +; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) +AppId={{79AFBC44-4C4B-4509-9723-5CB4F30E875F} +AppName={#MyAppName} +AppVersion={#MyAppVersion} +;AppVerName={#MyAppName} {#MyAppVersion} +AppPublisher={#MyAppPublisher} +AppPublisherURL={#MyAppURL} +AppSupportURL={#MyAppURL} +AppUpdatesURL={#MyAppURL} +DefaultDirName={autopf}\{#MyAppName} +DisableProgramGroupPage=yes +; Uncomment the following line to run in non administrative install mode (install for current user only.) +;PrivilegesRequired=lowest +OutputDir=.\artifacts +OutputBaseFilename=tvpn-installer +SetupIconFile=.\src\main\resources\icon.ico +Compression=lzma +SolidCompression=yes +WizardStyle=modern + +[Languages] +Name: "english"; MessagesFile: "compiler:Default.isl" + +[Tasks] +Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked + +[Files] +Source: ".\artifacts\TVPN.exe"; DestDir: "{app}"; Flags: ignoreversion +Source: ".\jre\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs +Source: ".\artifacts\wireguard.dll"; DestDir: "{app}"; Flags: ignoreversion +Source: ".\artifacts\tunnel.dll"; DestDir: "{app}"; Flags: ignoreversion +Source: ".\artifacts\libwireguard_wrapper.dll"; DestDir: "{app}"; Flags: ignoreversion +; NOTE: Don't use "Flags: ignoreversion" on any shared system files + +[Icons] +Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" +Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon + +[Run] +Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent + diff --git a/src/main/cpp/CMakeLists.txt b/src/main/cpp/CMakeLists.txt index 26936ff..10e1a71 100644 --- a/src/main/cpp/CMakeLists.txt +++ b/src/main/cpp/CMakeLists.txt @@ -17,8 +17,10 @@ include_directories(${JNI_INCLUDE_DIR} ${JNI_INCLUDE_DIR2}) # Add the source file that includes your JNI C wrapper code add_library(wireguard_wrapper SHARED wireguard_wrapper.c) +target_link_libraries(wireguard_wrapper PRIVATE Rpcrt4) + # Optionally, you can specify output directory for the compiled library set_target_properties(wireguard_wrapper PROPERTIES - LIBRARY_OUTPUT_DIRECTORY build/lib + LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" OUTPUT_NAME "wireguard_wrapper" ) diff --git a/src/main/cpp/example.c b/src/main/cpp/example.c new file mode 100644 index 0000000..7d8e5bf --- /dev/null +++ b/src/main/cpp/example.c @@ -0,0 +1,444 @@ +// +// Created by steven on 10/27/2024. +// + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "wireguard.h" + +static WIREGUARD_CREATE_ADAPTER_FUNC *WireGuardCreateAdapter; +static WIREGUARD_OPEN_ADAPTER_FUNC *WireGuardOpenAdapter; +static WIREGUARD_CLOSE_ADAPTER_FUNC *WireGuardCloseAdapter; +static WIREGUARD_GET_ADAPTER_LUID_FUNC *WireGuardGetAdapterLUID; +static WIREGUARD_GET_RUNNING_DRIVER_VERSION_FUNC *WireGuardGetRunningDriverVersion; +static WIREGUARD_DELETE_DRIVER_FUNC *WireGuardDeleteDriver; +static WIREGUARD_SET_LOGGER_FUNC *WireGuardSetLogger; +static WIREGUARD_SET_ADAPTER_LOGGING_FUNC *WireGuardSetAdapterLogging; +static WIREGUARD_GET_ADAPTER_STATE_FUNC *WireGuardGetAdapterState; +static WIREGUARD_SET_ADAPTER_STATE_FUNC *WireGuardSetAdapterState; +static WIREGUARD_GET_CONFIGURATION_FUNC *WireGuardGetConfiguration; +static WIREGUARD_SET_CONFIGURATION_FUNC *WireGuardSetConfiguration; + +static HMODULE +InitializeWireGuardNT(void) +{ + HMODULE WireGuardDll = + LoadLibraryExW(L"wireguard.dll", NULL, LOAD_LIBRARY_SEARCH_APPLICATION_DIR | LOAD_LIBRARY_SEARCH_SYSTEM32); + if (!WireGuardDll) + return NULL; +#define X(Name) ((*(FARPROC *)&Name = GetProcAddress(WireGuardDll, #Name)) == NULL) + if (X(WireGuardCreateAdapter) || X(WireGuardOpenAdapter) || X(WireGuardCloseAdapter) || + X(WireGuardGetAdapterLUID) || X(WireGuardGetRunningDriverVersion) || X(WireGuardDeleteDriver) || + X(WireGuardSetLogger) || X(WireGuardSetAdapterLogging) || X(WireGuardGetAdapterState) || + X(WireGuardSetAdapterState) || X(WireGuardGetConfiguration) || X(WireGuardSetConfiguration)) +#undef X + { + DWORD LastError = GetLastError(); + FreeLibrary(WireGuardDll); + SetLastError(LastError); + return NULL; + } + return WireGuardDll; +} + +static void CALLBACK +ConsoleLogger(_In_ WIREGUARD_LOGGER_LEVEL Level, _In_ DWORD64 Timestamp, _In_z_ const WCHAR *LogLine) +{ + SYSTEMTIME SystemTime; + FileTimeToSystemTime((FILETIME *)&Timestamp, &SystemTime); + WCHAR LevelMarker; + switch (Level) + { + case WIREGUARD_LOG_INFO: + LevelMarker = L'+'; + break; + case WIREGUARD_LOG_WARN: + LevelMarker = L'-'; + break; + case WIREGUARD_LOG_ERR: + LevelMarker = L'!'; + break; + default: + return; + } + fwprintf( + stderr, + L"%04u-%02u-%02u %02u:%02u:%02u.%04u [%c] %s\n", + SystemTime.wYear, + SystemTime.wMonth, + SystemTime.wDay, + SystemTime.wHour, + SystemTime.wMinute, + SystemTime.wSecond, + SystemTime.wMilliseconds, + LevelMarker, + LogLine); +} + +static DWORD64 Now(VOID) +{ + LARGE_INTEGER Timestamp; + NtQuerySystemTime(&Timestamp); + return Timestamp.QuadPart; +} + +static DWORD +LogError(_In_z_ const WCHAR *Prefix, _In_ DWORD Error) +{ + WCHAR *SystemMessage = NULL, *FormattedMessage = NULL; + FormatMessageW( + FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_MAX_WIDTH_MASK, + NULL, + HRESULT_FROM_SETUPAPI(Error), + MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), + (void *)&SystemMessage, + 0, + NULL); + FormatMessageW( + FORMAT_MESSAGE_FROM_STRING | FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_ARGUMENT_ARRAY | + FORMAT_MESSAGE_MAX_WIDTH_MASK, + SystemMessage ? L"%1: %3(Code 0x%2!08X!)" : L"%1: Code 0x%2!08X!", + 0, + 0, + (void *)&FormattedMessage, + 0, + (va_list *)(DWORD_PTR[]){ (DWORD_PTR)Prefix, (DWORD_PTR)Error, (DWORD_PTR)SystemMessage }); + if (FormattedMessage) + ConsoleLogger(WIREGUARD_LOG_ERR, Now(), FormattedMessage); + LocalFree(FormattedMessage); + LocalFree(SystemMessage); + return Error; +} + +static DWORD +LogLastError(_In_z_ const WCHAR *Prefix) +{ + DWORD LastError = GetLastError(); + LogError(Prefix, LastError); + SetLastError(LastError); + return LastError; +} + +static void +Log(_In_ WIREGUARD_LOGGER_LEVEL Level, _In_z_ const WCHAR *Format, ...) +{ + WCHAR LogLine[0x200]; + va_list args; + va_start(args, Format); + _vsnwprintf_s(LogLine, _countof(LogLine), _TRUNCATE, Format, args); + va_end(args); + ConsoleLogger(Level, Now(), LogLine); +} + +_Must_inspect_result_ +_Return_type_success_(return != FALSE) +static BOOL +GenerateKeyPair( + _Out_writes_bytes_all_(WIREGUARD_KEY_LENGTH) BYTE PublicKey[WIREGUARD_KEY_LENGTH], + _Out_writes_bytes_all_(WIREGUARD_KEY_LENGTH) BYTE PrivateKey[WIREGUARD_KEY_LENGTH]) +{ + BCRYPT_ALG_HANDLE Algorithm; + BCRYPT_KEY_HANDLE Key; + NTSTATUS Status; + struct + { + BCRYPT_ECCKEY_BLOB Header; + BYTE Public[32]; + BYTE Unused[32]; + BYTE Private[32]; + } ExportedKey; + ULONG Bytes; + + Status = BCryptOpenAlgorithmProvider(&Algorithm, BCRYPT_ECDH_ALGORITHM, NULL, 0); + if (!NT_SUCCESS(Status)) + goto out; + + Status = BCryptSetProperty( + Algorithm, BCRYPT_ECC_CURVE_NAME, (PUCHAR)BCRYPT_ECC_CURVE_25519, sizeof(BCRYPT_ECC_CURVE_25519), 0); + if (!NT_SUCCESS(Status)) + goto cleanupProvider; + + Status = BCryptGenerateKeyPair(Algorithm, &Key, 255, 0); + if (!NT_SUCCESS(Status)) + goto cleanupProvider; + + Status = BCryptFinalizeKeyPair(Key, 0); + if (!NT_SUCCESS(Status)) + goto cleanupKey; + + Status = BCryptExportKey(Key, NULL, BCRYPT_ECCPRIVATE_BLOB, (PUCHAR)&ExportedKey, sizeof(ExportedKey), &Bytes, 0); + if (!NT_SUCCESS(Status)) + goto cleanupKey; + + memcpy(PublicKey, ExportedKey.Public, WIREGUARD_KEY_LENGTH); + memcpy(PrivateKey, ExportedKey.Private, WIREGUARD_KEY_LENGTH); + SecureZeroMemory(&ExportedKey, sizeof(ExportedKey)); + + cleanupKey: + BCryptDestroyKey(Key); + cleanupProvider: + BCryptCloseAlgorithmProvider(Algorithm, 0); + out: + SetLastError(RtlNtStatusToDosError(Status)); + return NT_SUCCESS(Status); +} + +static HANDLE QuitEvent; + +static BOOL WINAPI +CtrlHandler(_In_ DWORD CtrlType) +{ + switch (CtrlType) + { + case CTRL_C_EVENT: + case CTRL_BREAK_EVENT: + case CTRL_CLOSE_EVENT: + case CTRL_LOGOFF_EVENT: + case CTRL_SHUTDOWN_EVENT: + Log(WIREGUARD_LOG_INFO, L"Cleaning up and shutting down"); + SetEvent(QuitEvent); + return TRUE; + } + return FALSE; +} + +_Return_type_success_(return != FALSE) +static BOOL +TalkToDemoServer( + _In_reads_bytes_(InputLength) const CHAR *Input, + _In_ DWORD InputLength, + _Out_writes_bytes_(*OutputLength) CHAR *Output, + _Inout_ DWORD *OutputLength, + _Out_ SOCKADDR_INET *ResolvedDemoServer) +{ + SOCKET Socket = INVALID_SOCKET; + ADDRINFOW Hints = { .ai_family = AF_UNSPEC, .ai_socktype = SOCK_STREAM, .ai_protocol = IPPROTO_TCP }, *Resolution; + BOOL Ret = FALSE; + + if (GetAddrInfoW(L"demo.wireguard.com", L"42912", &Hints, &Resolution)) + return FALSE; + for (ADDRINFOW *Candidate = Resolution; Candidate; Candidate = Candidate->ai_next) + { + if (Candidate->ai_family != AF_INET && Candidate->ai_family != AF_INET6) + continue; + Socket = socket(Candidate->ai_family, Candidate->ai_socktype, Candidate->ai_protocol); + if (Socket == INVALID_SOCKET) + goto cleanupResolution; + if (connect(Socket, Candidate->ai_addr, (int)Candidate->ai_addrlen) == SOCKET_ERROR) + { + closesocket(Socket); + Socket = INVALID_SOCKET; + } + memcpy(ResolvedDemoServer, Candidate->ai_addr, Candidate->ai_addrlen); + break; + } + if (Socket == INVALID_SOCKET) + goto cleanupResolution; + if (send(Socket, Input, InputLength, 0) == SOCKET_ERROR) + goto cleanupSocket; + if ((*OutputLength = recv(Socket, Output, *OutputLength, 0)) == SOCKET_ERROR) + goto cleanupSocket; + Ret = TRUE; + cleanupSocket: + closesocket(Socket); + cleanupResolution: + FreeAddrInfoW(Resolution); + return Ret; +} + +int __cdecl main(void) +{ + DWORD LastError; + WSADATA WsaData; + if (WSAStartup(MAKEWORD(2, 2), &WsaData)) + return LogError(L"Failed to initialize Winsock", GetLastError()); + HMODULE WireGuard = InitializeWireGuardNT(); + if (!WireGuard) + { + LastError = LogError(L"Failed to initialize WireGuardNT", GetLastError()); + goto cleanupWinsock; + } + WireGuardSetLogger(ConsoleLogger); + Log(WIREGUARD_LOG_INFO, L"WireGuardNT library loaded"); + + struct + { + WIREGUARD_INTERFACE Interface; + WIREGUARD_PEER DemoServer; + WIREGUARD_ALLOWED_IP AllV4; + } Config = { .Interface = { .Flags = WIREGUARD_INTERFACE_HAS_PRIVATE_KEY, .PeersCount = 1 }, + .DemoServer = { .Flags = WIREGUARD_PEER_HAS_PUBLIC_KEY | WIREGUARD_PEER_HAS_ENDPOINT, + .AllowedIPsCount = 1 }, + .AllV4 = { .AddressFamily = AF_INET } }; + + Log(WIREGUARD_LOG_INFO, L"Generating keypair"); + BYTE PublicKey[WIREGUARD_KEY_LENGTH]; + if (!GenerateKeyPair(PublicKey, Config.Interface.PrivateKey)) + { + LastError = LogError(L"Failed to generate keypair", GetLastError()); + goto cleanupWireGuard; + } + CHAR PublicKeyString[46] = { 0 }; + DWORD Bytes = sizeof(PublicKeyString); + CryptBinaryToStringA( + PublicKey, sizeof(PublicKey), CRYPT_STRING_BASE64 | CRYPT_STRING_NOCR, PublicKeyString, &Bytes); + CHAR ServerResponse[256] = { 0 }; + Log(WIREGUARD_LOG_INFO, L"Talking to demo server"); + Bytes = sizeof(ServerResponse) - 1; + if (!TalkToDemoServer( + PublicKeyString, (DWORD)strlen(PublicKeyString), ServerResponse, &Bytes, &Config.DemoServer.Endpoint)) + { + LastError = LogError(L"Failed to talk to demo server", GetLastError()); + goto cleanupWireGuard; + } + + CHAR *Colon1 = strchr(ServerResponse, ':'); + CHAR *Colon2 = Colon1 ? strchr(Colon1 + 1, ':') : NULL; + CHAR *Colon3 = Colon2 ? strchr(Colon2 + 1, ':') : NULL; + if (!Colon1 || !Colon2 || !Colon3) + { + LastError = LogError(L"Failed to parse demo server response", ERROR_UNDEFINED_CHARACTER); + goto cleanupWireGuard; + } + if (Bytes && ServerResponse[--Bytes] == '\n') + ServerResponse[Bytes] = '\0'; + *Colon1 = *Colon2 = *Colon3 = '\0'; + + MIB_UNICASTIPADDRESS_ROW AddressRow; + InitializeUnicastIpAddressEntry(&AddressRow); + AddressRow.Address.Ipv4.sin_family = AF_INET; + AddressRow.OnLinkPrefixLength = 24; /* This is a /24 network */ + AddressRow.DadState = IpDadStatePreferred; + Bytes = sizeof(Config.DemoServer.PublicKey); + if (strcmp(ServerResponse, "OK") || InetPtonA(AF_INET, Colon3 + 1, &AddressRow.Address.Ipv4.sin_addr) != 1 || + !CryptStringToBinaryA(Colon1 + 1, 0, CRYPT_STRING_BASE64, Config.DemoServer.PublicKey, &Bytes, NULL, NULL)) + { + LastError = LogError(L"Failed to parse demo server response", ERROR_UNDEFINED_CHARACTER); + goto cleanupWireGuard; + } + if (Config.DemoServer.Endpoint.si_family == AF_INET) + Config.DemoServer.Endpoint.Ipv4.sin_port = htons((u_short)atoi(Colon2 + 1)); + else if (Config.DemoServer.Endpoint.si_family == AF_INET6) + Config.DemoServer.Endpoint.Ipv6.sin6_port = htons((u_short)atoi(Colon2 + 1)); + + QuitEvent = CreateEventW(NULL, TRUE, FALSE, NULL); + if (!QuitEvent) + { + LastError = LogError(L"Failed to create event", GetLastError()); + goto cleanupWireGuard; + } + if (!SetConsoleCtrlHandler(CtrlHandler, TRUE)) + { + LastError = LogError(L"Failed to set console handler", GetLastError()); + goto cleanupQuit; + } + + GUID ExampleGuid = { 0xdeadc001, 0xbeef, 0xbabe, { 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef } }; + WIREGUARD_ADAPTER_HANDLE Adapter = WireGuardCreateAdapter(L"Demo", L"Example", &ExampleGuid); + if (!Adapter) + { + LastError = GetLastError(); + LogError(L"Failed to create adapter", LastError); + goto cleanupQuit; + } + + if (!WireGuardSetAdapterLogging(Adapter, WIREGUARD_ADAPTER_LOG_ON)) + LogError(L"Failed to enable adapter logging", GetLastError()); + + DWORD Version = WireGuardGetRunningDriverVersion(); + Log(WIREGUARD_LOG_INFO, L"WireGuardNT v%u.%u loaded", (Version >> 16) & 0xff, (Version >> 0) & 0xff); + + WireGuardGetAdapterLUID(Adapter, &AddressRow.InterfaceLuid); + MIB_IPFORWARD_ROW2 DefaultRoute = { 0 }; + InitializeIpForwardEntry(&DefaultRoute); + DefaultRoute.InterfaceLuid = AddressRow.InterfaceLuid; + DefaultRoute.DestinationPrefix.Prefix.si_family = AF_INET; + DefaultRoute.NextHop.si_family = AF_INET; + DefaultRoute.Metric = 0; + LastError = CreateIpForwardEntry2(&DefaultRoute); + if (LastError != ERROR_SUCCESS && LastError != ERROR_OBJECT_ALREADY_EXISTS) + { + LogError(L"Failed to set default route", LastError); + goto cleanupAdapter; + } + LastError = CreateUnicastIpAddressEntry(&AddressRow); + if (LastError != ERROR_SUCCESS && LastError != ERROR_OBJECT_ALREADY_EXISTS) + { + LogError(L"Failed to set IP address", LastError); + goto cleanupAdapter; + } + MIB_IPINTERFACE_ROW IpInterface = { 0 }; + InitializeIpInterfaceEntry(&IpInterface); + IpInterface.InterfaceLuid = AddressRow.InterfaceLuid; + IpInterface.Family = AF_INET; + LastError = GetIpInterfaceEntry(&IpInterface); + if (LastError != ERROR_SUCCESS) + { + LogError(L"Failed to get IP interface", LastError); + goto cleanupAdapter; + } + IpInterface.UseAutomaticMetric = FALSE; + IpInterface.Metric = 0; + IpInterface.NlMtu = 1420; + IpInterface.SitePrefixLength = 0; + LastError = SetIpInterfaceEntry(&IpInterface); + if (LastError != ERROR_SUCCESS) + { + LogError(L"Failed to set metric and MTU", LastError); + goto cleanupAdapter; + } + + Log(WIREGUARD_LOG_INFO, L"Setting configuration and adapter up"); + if (!WireGuardSetConfiguration(Adapter, &Config.Interface, sizeof(Config)) || + !WireGuardSetAdapterState(Adapter, WIREGUARD_ADAPTER_STATE_UP)) + { + LastError = LogError(L"Failed to set configuration and adapter up", GetLastError()); + goto cleanupAdapter; + } + + do + { + Bytes = sizeof(Config); + if (!WireGuardGetConfiguration(Adapter, &Config.Interface, &Bytes) || !Config.Interface.PeersCount) + { + LastError = LogError(L"Failed to get configuration", GetLastError()); + goto cleanupAdapter; + } + DWORD64 Timestamp = Now(); + SYSTEMTIME SystemTime; + FileTimeToSystemTime((FILETIME *)&Timestamp, &SystemTime); + fwprintf( + stderr, + L"%04u-%02u-%02u %02u:%02u:%02u.%04u [#] RX: %llu, TX: %llu\r", + SystemTime.wYear, + SystemTime.wMonth, + SystemTime.wDay, + SystemTime.wHour, + SystemTime.wMinute, + SystemTime.wSecond, + SystemTime.wMilliseconds, + Config.DemoServer.RxBytes, + Config.DemoServer.TxBytes); + } while (WaitForSingleObject(QuitEvent, 1000) == WAIT_TIMEOUT); + + cleanupAdapter: + WireGuardCloseAdapter(Adapter); + cleanupQuit: + SetConsoleCtrlHandler(CtrlHandler, FALSE); + CloseHandle(QuitEvent); + cleanupWireGuard: + FreeLibrary(WireGuard); + cleanupWinsock: + WSACleanup(); + return LastError; +} \ No newline at end of file diff --git a/src/main/cpp/tech_nevets_tvpn_wg_WireGuardJNI.h b/src/main/cpp/tech_nevets_tvpn_wg_WireGuardJNI.h deleted file mode 100644 index b3141ff..0000000 --- a/src/main/cpp/tech_nevets_tvpn_wg_WireGuardJNI.h +++ /dev/null @@ -1,117 +0,0 @@ -/* DO NOT EDIT THIS FILE - it is machine generated */ -#include -/* Header for class tech_nevets_tvpn_wg_WireGuardJNI */ - -#ifndef _Included_tech_nevets_tvpn_wg_WireGuardJNI -#define _Included_tech_nevets_tvpn_wg_WireGuardJNI -#ifdef __cplusplus -extern "C" { -#endif -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: installAdapter - * Signature: ()I - */ -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_installAdapter - (JNIEnv *, jobject); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: removeAdapter - * Signature: ()I - */ -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_removeAdapter - (JNIEnv *, jobject); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: startTunnel - * Signature: (Ljava/lang/String;)I - */ -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_startTunnel - (JNIEnv *, jobject, jstring); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: stopTunnel - * Signature: (Ljava/lang/String;)I - */ -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_stopTunnel - (JNIEnv *, jobject, jstring); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: createTunnel - * Signature: (Ljava/lang/String;)I - */ -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_createTunnel - (JNIEnv *, jobject, jstring); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: deleteTunnel - * Signature: (Ljava/lang/String;)I - */ -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_deleteTunnel - (JNIEnv *, jobject, jstring); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: getConfig - * Signature: (Ljava/lang/String;)Ljava/lang/String; - */ -JNIEXPORT jstring JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_getConfig - (JNIEnv *, jobject, jstring); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: updateConfig - * Signature: (Ljava/lang/String;Ljava/lang/String;)I - */ -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_updateConfig - (JNIEnv *, jobject, jstring, jstring); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: addConfig - * Signature: (Ljava/lang/String;Ljava/lang/String;)I - */ -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_addConfig - (JNIEnv *, jobject, jstring, jstring); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: getActiveTunnel - * Signature: ()Ljava/lang/String; - */ -JNIEXPORT jstring JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_getActiveTunnel - (JNIEnv *, jobject); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: isActive - * Signature: ()Z - */ -JNIEXPORT jboolean JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_isActive - (JNIEnv *, jobject); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: initializeWireGuard - * Signature: (Ljava/lang/String;)I - */ -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_initializeWireGuard - (JNIEnv *, jobject, jstring); - -/* - * Class: tech_nevets_tvpn_wg_WireGuardJNI - * Method: cleanup - * Signature: ()V - */ -JNIEXPORT void JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_cleanup - (JNIEnv *, jobject); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/src/main/cpp/wireguard_wrapper.c b/src/main/cpp/wireguard_wrapper.c index 22e0bb4..8af66fb 100644 --- a/src/main/cpp/wireguard_wrapper.c +++ b/src/main/cpp/wireguard_wrapper.c @@ -1,28 +1,133 @@ #include +#include #include +#include +#include #include #include #include "wireguard.h" -#include #include "tech_nevets_tvpn_wg_WireGuardJNI.h" -const char *APP_DIR = "C:\\Program Files\\TVPN\\"; +#pragma comment(lib, "Rpcrt4.lib") -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_createTunnel(JNIEnv *env, jobject obj, jstring tunnelName) { - const char *tunnelCharArr = (*env)->GetStringUTFChars(env, tunnelName, NULL); - if (tunnelCharArr == NULL) { - return 1; +const wchar_t *APP_DIR = L"C:\\Program Files\\TVPN\\"; + +static WIREGUARD_CREATE_ADAPTER_FUNC *WireGuardCreateAdapter; +static WIREGUARD_OPEN_ADAPTER_FUNC *WireGuardOpenAdapter; +static WIREGUARD_CLOSE_ADAPTER_FUNC *WireGuardCloseAdapter; +static WIREGUARD_GET_ADAPTER_LUID_FUNC *WireGuardGetAdapterLUID; +static WIREGUARD_GET_RUNNING_DRIVER_VERSION_FUNC *WireGuardGetRunningDriverVersion; +static WIREGUARD_DELETE_DRIVER_FUNC *WireGuardDeleteDriver; +static WIREGUARD_SET_LOGGER_FUNC *WireGuardSetLogger; +static WIREGUARD_SET_ADAPTER_LOGGING_FUNC *WireGuardSetAdapterLogging; +static WIREGUARD_GET_ADAPTER_STATE_FUNC *WireGuardGetAdapterState; +static WIREGUARD_SET_ADAPTER_STATE_FUNC *WireGuardSetAdapterState; +static WIREGUARD_GET_CONFIGURATION_FUNC *WireGuardGetConfiguration; +static WIREGUARD_SET_CONFIGURATION_FUNC *WireGuardSetConfiguration; + +static HMODULE InitializeWireGuardNT(void) { + HMODULE WireGuardDll = LoadLibraryExW( + L"wireguard.dll", + NULL, + LOAD_LIBRARY_SEARCH_APPLICATION_DIR | LOAD_LIBRARY_SEARCH_SYSTEM32 + ); + if (!WireGuardDll) return NULL; +#define X(Name) ((*(FARPROC *)&Name = GetProcAddress(WireGuardDll, #Name)) == NULL) + if (X(WireGuardCreateAdapter) || X(WireGuardOpenAdapter) || X(WireGuardCloseAdapter) || + X(WireGuardGetAdapterLUID) || X(WireGuardGetRunningDriverVersion) || X(WireGuardDeleteDriver) || + X(WireGuardSetLogger) || X(WireGuardSetAdapterLogging) || X(WireGuardGetAdapterState) || + X(WireGuardSetAdapterState) || X(WireGuardGetConfiguration) || X(WireGuardSetConfiguration)) +#undef X + { + DWORD LastError = GetLastError(); + FreeLibrary(WireGuardDll); + SetLastError(LastError); + return NULL; + } + return WireGuardDll; +} + +GUID generateGUID() { + UUID uuid; + RPC_STATUS status = UuidCreate(&uuid); + + // Handle GUID generation error + if (status != RPC_S_OK) { + fprintf(stderr, "[C] Failed to create GUID\n"); + exit(1); // Exiting here to indicate a critical error; you may handle differently } - char *initialServiceName = "WireGuardTunnel$"; - char *tnlName = malloc(strlen(initialServiceName) + strlen(tunnelCharArr) + 1); - strcpy(tnlName, initialServiceName); - strcat(tnlName, tunnelCharArr); + // Copy the generated UUID into a GUID struct + GUID guid = { uuid.Data1, uuid.Data2, uuid.Data3 }; + for (int i = 0; i < 8; i++) { + guid.Data4[i] = uuid.Data4[i]; + } - char *initialDisplayName = "WireGuard Tunnel: "; - char *displayName = malloc(strlen(initialDisplayName) + strlen(tunnelCharArr) + 1); - strcpy(displayName, initialDisplayName); - strcat(displayName, tunnelCharArr); + return guid; +} + +JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_installAdapter(JNIEnv *env, jobject obj) { + HMODULE WireGuardDLL = InitializeWireGuardNT(); + + GUID guid = generateGUID(); + WIREGUARD_ADAPTER_HANDLE Adapter = WireGuardCreateAdapter(L"TVPNet", L"WireGuard", &guid); + + struct { + WIREGUARD_INTERFACE Interface; + WIREGUARD_PEER DemoServer; + WIREGUARD_ALLOWED_IP AllV4; + } Config = { + .Interface = { + .Flags = WIREGUARD_INTERFACE_HAS_PRIVATE_KEY, + .PeersCount = 1 + }, + .DemoServer = { + .Flags = WIREGUARD_PEER_HAS_PUBLIC_KEY | WIREGUARD_PEER_HAS_ENDPOINT, + .AllowedIPsCount = 1 + }, + .AllV4 = { + .AddressFamily = AF_INET + } + }; + + WireGuardSetConfiguration(Adapter, &Config.Interface, sizeof(Config)); + WireGuardSetAdapterState(Adapter, WIREGUARD_ADAPTER_STATE_UP); + + FreeLibrary(WireGuardDLL); + return 0; +} + +JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_removeAdapter(JNIEnv *env, jobject obj) { + HMODULE WireGuardDLL = InitializeWireGuardNT(); + + WIREGUARD_ADAPTER_HANDLE Adapter = WireGuardOpenAdapter(L"TVPNet"); + + printf("[C] Closing Adapter...\n"); + WireGuardCloseAdapter(Adapter); + + FreeLibrary(WireGuardDLL); + return 0; +} + +JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_installTunnel(JNIEnv *env, jobject obj, jstring tunnelName, jstring pathToConfig) { + printf("[C] Started installTunnel\n"); + + const jchar *rawStr = (*env)->GetStringChars(env, tunnelName, 0); //TODO mem cleanup + LPWSTR tnlName = (LPWSTR) rawStr; + + wprintf(L"[C] Tunnel Name: %ls", tnlName); + + wchar_t *servicePrefix = L"WireGuardTunnel$"; + wchar_t *serviceName = malloc(sizeof(wchar_t) * (wcslen(servicePrefix) + wcslen(tnlName) + 1)); //TODO mem cleanup + wcscpy(serviceName, servicePrefix); + wcscat(serviceName, tnlName); + + wchar_t *displayNamePrefix = L"WireGuard Tunnel: "; + wchar_t *displayName = malloc(sizeof(wchar_t) * (wcslen(displayNamePrefix) + wcslen(tnlName) + 1)); //TODO mem cleanup + wcscpy(displayName, displayNamePrefix); + wcscat(displayName, tnlName); + + printf("[C] Opening Service Manager\n"); SC_HANDLE hSCManager = OpenSCManager( NULL, @@ -30,21 +135,23 @@ JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_createTunnel(JNIEnv SC_MANAGER_ALL_ACCESS ); if (hSCManager == NULL) { - printf("OpenSCManager failed (%lu)\n", GetLastError()); - return 2; + printf("[C] OpenSCManager failed (%lu)\n", GetLastError()); + return 3; } - char *params = "TVPN.exe /installtunnelservice "; - char *conf = ".conf"; - char *exePath = malloc(strlen(APP_DIR) + strlen(params) + strlen(tunnelCharArr) + strlen(conf) + 1); - strcpy(exePath, APP_DIR); - strcat(exePath, params); - strcat(exePath, tunnelCharArr); - strcat(exePath, conf); + wchar_t *params = L"TVPN.exe /installtunnelservice "; + wchar_t *conf = L".conf"; + wchar_t *exePath = malloc(sizeof(wchar_t) * (wcslen(APP_DIR) + wcslen(params) + wcslen(tnlName) + wcslen(conf) + 1)); //TODO mem cleanup + wcscpy(exePath, APP_DIR); + wcscat(exePath, params); + wcscat(exePath, tnlName); + wcscat(exePath, conf); - SC_HANDLE hService = CreateServiceA( + wprintf(L"[C] Creating Service: %ls\n", exePath); + + SC_HANDLE hService = CreateServiceW( hSCManager, - tnlName, + serviceName, displayName, SERVICE_ALL_ACCESS, SERVICE_WIN32_OWN_PROCESS, @@ -53,42 +160,62 @@ JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_createTunnel(JNIEnv exePath, NULL, NULL, - "Nsi\0TcpIp\0\0", + L"Nsi\0TcpIp\0\0", NULL, NULL - ); + ); DWORD sid_info = SERVICE_SID_TYPE_UNRESTRICTED; - if (!ChangeServiceConfig2A(hService, SERVICE_CONFIG_SERVICE_SID_INFO, &sid_info)) { - printf("ChangeServiceConfig2W failed (%lu)\n", GetLastError()); - (*env)->ReleaseStringUTFChars(env, tunnelName, tunnelCharArr); - free(tnlName); + printf("[C] Changing Service Config\n"); + + if (!ChangeServiceConfig2W(hService, SERVICE_CONFIG_SERVICE_SID_INFO, &sid_info)) { + printf("[C] ChangeServiceConfig2W failed (%lu)\n", GetLastError()); + (*env)->ReleaseStringChars(env, tunnelName, rawStr); + free(serviceName); free(displayName); free(exePath); CloseServiceHandle(hSCManager); CloseServiceHandle(hService); - return 3; + return 4; } + printf("[C] Cleaning up creation\n"); - (*env)->ReleaseStringUTFChars(env, tunnelName, tunnelCharArr); - free(tnlName); - free(displayName); - free(exePath); CloseServiceHandle(hSCManager); CloseServiceHandle(hService); + free(serviceName); + free(displayName); + free(exePath); + (*env)->ReleaseStringChars(env, tunnelName, rawStr); - return 0; + printf("[C] Loading tunnel.dll\n"); + + HMODULE tunnel_lib = LoadLibrary("tunnel.dll"); + if (!tunnel_lib) abort(); + + BOOL (_cdecl *tunnel_proc) (_In_ LPCWSTR conf_file); + *(FARPROC*) &tunnel_proc = GetProcAddress(tunnel_lib, "WireGuardTunnelService"); + if (!tunnel_proc) abort(); + + const jchar *rawString = (*env)->GetStringChars(env, pathToConfig, NULL); + LPCWSTR configPath = (LPCWSTR) rawString; + + //TODO figure out how to handle this + //(*env)->ReleaseStringChars(env, tunnelName, rawStr); + + wprintf(L"[C] Calling function with arg: %ls\n", configPath); + + return tunnel_proc(configPath); } -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_deleteTunnel(JNIEnv *env, jobject obj, jstring tunnelName) { - const char *nativeString = (*env)->GetStringUTFChars(env, tunnelName, NULL); +JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_removeTunnel(JNIEnv *env, jobject obj, jstring tunnelName) { + const jchar *nativeString = (*env)->GetStringChars(env, tunnelName, NULL); - char *initialServiceName = "WireGuardTunnel$"; - char *tnlName = malloc(strlen(initialServiceName) + strlen(nativeString) + 1); - strcpy(tnlName, initialServiceName); - strcat(tnlName, nativeString); + wchar_t *initialServiceName = L"WireGuardTunnel$"; + wchar_t *tnlName = malloc(sizeof(wchar_t) * (wcslen(initialServiceName) + wcslen(nativeString) + 1)); + wcscpy(tnlName, initialServiceName); + wcscat(tnlName, nativeString); SC_HANDLE hSCManager = OpenSCManager( NULL, @@ -100,7 +227,7 @@ JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_deleteTunnel(JNIEnv return 1; } - SC_HANDLE hService = OpenServiceA(hSCManager, tnlName, DELETE); + SC_HANDLE hService = OpenServiceW(hSCManager, tnlName, DELETE); if (hService != NULL) { if (!DeleteService(hService)) { // Handle error @@ -113,49 +240,8 @@ JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_deleteTunnel(JNIEnv } CloseServiceHandle(hSCManager); - (*env)->ReleaseStringUTFChars(env, tunnelName, nativeString); + (*env)->ReleaseStringChars(env, tunnelName, nativeString); free(tnlName); return 0; -} - -JNIEXPORT jint JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_initializeWireGuard(JNIEnv *env, jobject obj, jstring configFilePath) { - const char *nativeString = (*env)->GetStringUTFChars(env, configFilePath, 0); - - int confLength = strlen(nativeString); - - (*env)->ReleaseStringUTFChars(env, configFilePath, nativeString); - - return confLength; - -// const char *nativeConfigFilePath = (*env)->GetStringUTFChars(env, configFilePath, 0); - - // Load the WireGuard DLL dynamically -// hInstLibrary = LoadLibrary("tunnel.dll"); // Adjust with the actual DLL name - -// if (hInstLibrary) { - // Example: Load the WireGuard function from DLL -// wg_func_t wg_init_func = (wg_func_t) GetProcAddress(hInstLibrary, "WireGuardInitFunction"); // Adjust based on the WireGuard API - - -// if (wg_init_func) { -// wg_init_func(nativeConfigFilePath); -// (*env)->ReleaseStringUTFChars(env, configFilePath, nativeConfigFilePath); -// return 0; // Success -// } else { -// printf("Failed to get function from WireGuard DLL\n"); -// return -2; // Failed to get function -// } -// } else { -// printf("Failed to load WireGuard DLL\n"); -// return -1; // Failed to load DLL -// } -} - -JNIEXPORT void JNICALL Java_tech_nevets_tvpn_wg_WireGuardJNI_cleanup(JNIEnv *env, jobject obj) { - printf("Silly goose, this isn't implemented yet!\n"); - -// if (hInstLibrary) { -// FreeLibrary(hInstLibrary); -// } -} +} \ No newline at end of file diff --git a/src/main/java/tech/nevets/tvpn/Main.java b/src/main/java/tech/nevets/tvpn/Main.java index 185ec85..b01e2cb 100644 --- a/src/main/java/tech/nevets/tvpn/Main.java +++ b/src/main/java/tech/nevets/tvpn/Main.java @@ -1,6 +1,8 @@ package tech.nevets.tvpn; import com.formdev.flatlaf.FlatDarkLaf; +import tech.nevets.jconf.JsonConfig; +import tech.nevets.tvpn.cli.CommandBrigadier; import tech.nevets.tvpn.ui.UIManager; import tech.nevets.tvpn.wg.WireGuardJNI; @@ -9,11 +11,16 @@ import java.io.File; public class Main { private static final Logger LOGGER = new Logger(Main.class); - public static void main(String[] args) { LogOutputStream logOut = new LogOutputStream(); Logger.loadLogOutStream(logOut); + JsonConfig conf = new JsonConfig(""); + + if (args.length > 0) { + new CommandBrigadier().execute(args); + } + try { javax.swing.UIManager.setLookAndFeel(new FlatDarkLaf()); } catch (UnsupportedLookAndFeelException e) { @@ -26,9 +33,8 @@ public class Main { UIManager uim = new UIManager(logOut); uim.startLoginFrame(); - WireGuardJNI wgjni = new WireGuardJNI(); + //WireGuardJNI wgjni = new WireGuardJNI(); //System.out.println(wgjni.createTunnel("test")); - System.out.println(wgjni.deleteTunnel("test")); + //System.out.println(wgjni.removeTunnel("test")); } - } diff --git a/src/main/java/tech/nevets/tvpn/Utils.java b/src/main/java/tech/nevets/tvpn/Utils.java index 5e10dd8..b388a8f 100644 --- a/src/main/java/tech/nevets/tvpn/Utils.java +++ b/src/main/java/tech/nevets/tvpn/Utils.java @@ -1,5 +1,7 @@ package tech.nevets.tvpn; +import tech.nevets.jconf.JsonConfig; + import java.io.File; import java.io.IOException; import java.net.URI; @@ -10,14 +12,24 @@ import java.util.Map; public class Utils { private static final Logger LOGGER = new Logger(Utils.class); - public static final File APP_DIR = new File("./tvpn/"); + public static final String WG_CONF_DIR = "C:\\Program Files\\WireGuard\\Data\\Configurations\\"; - public static final String API_ENDPOINT_BASE = "http://tvpn.lan/testing/"; + public static final File APP_DIR = new File("C:\\Program Files\\TVPN\\"); + public static final JsonConfig CONFIG = new JsonConfig(APP_DIR + "/config.json", getConfStr()); + public static final String API_ENDPOINT_BASE = CONFIG.getString("apiEndpoint"); static { if (!APP_DIR.exists()) APP_DIR.mkdirs(); } + private static String getConfStr() { + return """ + { + "apiEndpoint":"http://tvpn.lan" + } + """; + } + public static String get(URI url, Map headers) { HttpClient client = HttpClient.newHttpClient(); HttpRequest.Builder reqBuilder = HttpRequest.newBuilder() diff --git a/src/main/java/tech/nevets/tvpn/cli/Command.java b/src/main/java/tech/nevets/tvpn/cli/Command.java new file mode 100644 index 0000000..64f0e28 --- /dev/null +++ b/src/main/java/tech/nevets/tvpn/cli/Command.java @@ -0,0 +1,12 @@ +package tech.nevets.tvpn.cli; + +public interface Command { + + void execute(String[] args); + + String getName(); + + String getUsage(); + + String getDescription(); +} diff --git a/src/main/java/tech/nevets/tvpn/cli/CommandBrigadier.java b/src/main/java/tech/nevets/tvpn/cli/CommandBrigadier.java new file mode 100644 index 0000000..b09f4f5 --- /dev/null +++ b/src/main/java/tech/nevets/tvpn/cli/CommandBrigadier.java @@ -0,0 +1,49 @@ +package tech.nevets.tvpn.cli; + +import tech.nevets.tvpn.Logger; +import tech.nevets.tvpn.cli.commands.HelpCmd; +import tech.nevets.tvpn.cli.commands.InstallTunnelServiceCmd; +import tech.nevets.tvpn.cli.commands.UninstallTunnelServiceCmd; + +import java.util.ArrayList; +import java.util.List; + +public class CommandBrigadier { + private static final Logger LOGGER = new Logger(CommandBrigadier.class); + + private final List registeredCommands; + private final HelpCmd helpCmd; + + public CommandBrigadier() { + this.registeredCommands = new ArrayList<>(); + helpCmd = new HelpCmd(this); + + registerCommand(helpCmd); + registerCommand(new InstallTunnelServiceCmd()); + registerCommand(new UninstallTunnelServiceCmd()); + } + + public void registerCommand(Command cmd) { + for (Command c : registeredCommands) { + if (c.getName().equals(cmd.getName())) { + LOGGER.warn("Command with name " + cmd.getName() + " already registered, skipping."); + return; + } + } + registeredCommands.add(cmd); + } + + public void execute(String[] args) { + for (Command c : registeredCommands) { + if (c.getName().equals(args[0])) { + c.execute(args); + return; + } + } + helpCmd.execute(new String[0]); + } + + public List getCommands() { + return registeredCommands; + } +} diff --git a/src/main/java/tech/nevets/tvpn/cli/commands/HelpCmd.java b/src/main/java/tech/nevets/tvpn/cli/commands/HelpCmd.java new file mode 100644 index 0000000..366a69e --- /dev/null +++ b/src/main/java/tech/nevets/tvpn/cli/commands/HelpCmd.java @@ -0,0 +1,52 @@ +package tech.nevets.tvpn.cli.commands; + +import tech.nevets.tvpn.cli.Command; +import tech.nevets.tvpn.cli.CommandBrigadier; + +public class HelpCmd implements Command { + private final CommandBrigadier cb; + + public HelpCmd(CommandBrigadier cb) { + this.cb = cb; + } + + @Override + public void execute(String[] args) { + if (args.length > 0) { + for (Command c : cb.getCommands()) { + if (!(args.length == 1) && args[1].equals(c.getName())) { + System.out.println("TVPN - Usage Menu [" + c.getName() + "]"); + System.out.println(c.getName() + " " + c.getUsage() + ": " + c.getDescription()); + System.exit(0); + } + } + } + + StringBuilder sb = new StringBuilder(); + sb.append("TVPN - Help Menu\n"); + for (Command c : cb.getCommands()) { + sb.append(" - ").append(c.getName()) + .append(" ").append(c.getUsage()) + .append(": ").append(c.getDescription()) + .append("\n"); + } + + System.out.println(sb); + System.exit(0); + } + + @Override + public String getName() { + return "help"; + } + + @Override + public String getUsage() { + return ""; + } + + @Override + public String getDescription() { + return "Displays the help menu"; + } +} diff --git a/src/main/java/tech/nevets/tvpn/cli/commands/InstallTunnelServiceCmd.java b/src/main/java/tech/nevets/tvpn/cli/commands/InstallTunnelServiceCmd.java new file mode 100644 index 0000000..6602669 --- /dev/null +++ b/src/main/java/tech/nevets/tvpn/cli/commands/InstallTunnelServiceCmd.java @@ -0,0 +1,71 @@ +package tech.nevets.tvpn.cli.commands; + +import tech.nevets.tvpn.Utils; +import tech.nevets.tvpn.cli.Command; +import tech.nevets.tvpn.wg.WireGuardJNI; + +import java.util.regex.Pattern; + +public class InstallTunnelServiceCmd implements Command { + @Override + public void execute(String[] args) { + + + System.out.println("Executing InstallTunnelServiceCmd"); + String path = Utils.APP_DIR + "/configurations/" + args[1] + ".conf"; + System.out.println(new WireGuardJNI().installTunnel(args[1], path)); + System.exit(0); + } + + @Override + public String getName() { + return "/installtunnelservice"; + } + + @Override + public String getUsage() { + return "(/path/to/tunnel/config)"; + } + + @Override + public String getDescription() { + return "Creates and starts a WireGuard Tunnel Service"; + } + + String[] reservedNames = new String[]{ + "CON", "PRN", "AUX", "NUL", + "COM1", "COM2", "COM3", "COM4", "COM5", "COM6", "COM7", "COM8", "COM9", + "LPT1", "LPT2", "LPT3", "LPT4", "LPT5", "LPT6", "LPT7", "LPT8", "LPT9", + }; + + + private boolean isReserved(String name) { + if (name.isEmpty()) { + return false; + } + for (String s : reservedNames) { + if (name.contains(s)) { + return true; + } + } + return false; + } + + private static final String[] SPECIAL_CHARS = new String[]{"$", "\\", "/", ":", "*", "?", "\"", "'", "<", ">", "|", "\t", "\00"}; + private boolean hasSpecialChars(String name) { + for (String s : SPECIAL_CHARS) { + if (name.contains(s)) { + return true; + } + } + return false; + } + + private static final Pattern PATTERN = Pattern.compile("^[a-zA-Z0-9_=+.-]{1,32}$"); + private boolean tunnelNameIsValid(String name) { + if (isReserved(name) || hasSpecialChars(name)) { + return false; + } + return PATTERN.matcher(name).hasMatch(); + } +} diff --git a/src/main/java/tech/nevets/tvpn/cli/commands/UninstallTunnelServiceCmd.java b/src/main/java/tech/nevets/tvpn/cli/commands/UninstallTunnelServiceCmd.java new file mode 100644 index 0000000..9f812e0 --- /dev/null +++ b/src/main/java/tech/nevets/tvpn/cli/commands/UninstallTunnelServiceCmd.java @@ -0,0 +1,28 @@ +package tech.nevets.tvpn.cli.commands; + +import tech.nevets.tvpn.cli.Command; +import tech.nevets.tvpn.wg.WireGuardJNI; + +public class UninstallTunnelServiceCmd implements Command { + @Override + public void execute(String[] args) { + System.out.println("Executing UnInstallTunnelServiceCmd"); + System.out.println(new WireGuardJNI().removeTunnel(args[1])); + System.exit(0); + } + + @Override + public String getName() { + return "/uninstalltunnelservice"; + } + + @Override + public String getUsage() { + return "(tunnel name)"; + } + + @Override + public String getDescription() { + return "Stops and removes WireGuard Tunnel Service"; + } +} diff --git a/src/main/java/tech/nevets/tvpn/ui/UIManager.java b/src/main/java/tech/nevets/tvpn/ui/UIManager.java index fa01607..c38efd3 100644 --- a/src/main/java/tech/nevets/tvpn/ui/UIManager.java +++ b/src/main/java/tech/nevets/tvpn/ui/UIManager.java @@ -13,7 +13,7 @@ public class UIManager { public UIManager(LogOutputStream logOut) { frame = new JFrame(); - tabPane = new JTabbedPane(); + tabPane = new JTabbedPane(JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT); homePanel = new HomePanel(); tabPane.addTab("Home", homePanel); diff --git a/src/main/java/tech/nevets/tvpn/wg/WireGuardJNI.java b/src/main/java/tech/nevets/tvpn/wg/WireGuardJNI.java index 328649b..5251a65 100644 --- a/src/main/java/tech/nevets/tvpn/wg/WireGuardJNI.java +++ b/src/main/java/tech/nevets/tvpn/wg/WireGuardJNI.java @@ -10,10 +10,14 @@ public class WireGuardJNI { public native int installAdapter(); public native int removeAdapter(); - public native int startTunnel(String tunnelName); - public native int stopTunnel(String tunnelName); - public native int createTunnel(String tunnelName); - public native int deleteTunnel(String tunnelName); + /** + * Creates and starts the WireGuard service + * @param tunnelName Name of the tunnel + * @param pathToConfig Full path to the tunnel's configuration file + * @return 0 if successful, 1 if failed + */ + public native int installTunnel(String tunnelName, String pathToConfig); + public native int removeTunnel(String tunnelName); public native String getConfig(String tunnelName); public native int updateConfig(String tunnelName, String newConfig); diff --git a/src/main/resources/icon.ico b/src/main/resources/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..9df27e02e9d3eebdfbcacbdd6da0fdfa8c7844cf GIT binary patch literal 16958 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 S`eBD;dFbH}>-$Fh^Zx^1_vNqv literal 0 HcmV?d00001 diff --git a/src/main/resources/icon.png b/src/main/resources/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..827f8ef01c92e03d0fb9c3a6a1c1e0f0b93b9873 GIT binary patch literal 221052 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