This repository was archived by the owner on Nov 8, 2024. It is now read-only.
Adds wgbooster.dll exported interface - #1
Open
wiresock wants to merge 120 commits into
Open
Conversation
… on the wiresock-vpn-client executable. Added support for the transparent mode.
The settings dialog screenshot has been updated to reflect the latest changes, which now includes optional debug logging and virtual adapter mode.
WireSock UI
WireSock UI
Merge pull request #1 from robvanoostenrijk/WireSockUI
- Fixed loglevel not applying on initial start - Fixed log display color alternation displaying as black - Cleaned up log callback from WireSockManager
Update README.md
WireSock UI
Merge recent WiresockUI
- Added Auto Update functionality, checking against GitHub release for the repository for new versions
- Tag build source repository as assembly attribute
Merge WireSockUI
* fix(wiresockui): harden direct SDK integration and profile handling Update WireSockUI for direct SDK compatibility and harden the related DLL discovery, tunnel cleanup, parser, profile, and editor-validation paths. * add direct SDK compatibility support * prefer registered SDK/DLL locations before falling back to PATH probing * improve DLL discovery safety and path normalization * improve cleanup diagnostics * tighten native cleanup lifecycle handling * ensure disconnect always drops the tunnel handle * clear the tunnel handle when the native drop export is unavailable * clarify native cleanup behavior * tighten parser directive handling * handle editor validation edge cases * fix peer-section validation wording * remove redundant case-insensitive profile lookups * fix review findings and add profile tests * address PR review robustness feedback and follow-up comments
* feat(wiresockui): add wgbooster kill switch toggle Add UI support for controlling the wgbooster kill switch and harden the related settings flow. * add a wgbooster kill switch toggle * wire the toggle into settings load/save handling * refine kill switch settings behavior after PR review * tighten handling for non-admin users * prevent non-admin settings changes from implying kill switch state was applied when elevation is required * improve validation and state synchronization around the kill switch option * address kill switch PR feedback and follow-up review comments
* feat(wiresockui): add kill switch toggle and harden tunnel lifecycle Add WireSock UI support for the wgbooster kill switch and tighten the related settings, permission, and tunnel lifecycle handling. * add a wgbooster kill switch toggle * wire kill switch state into settings load/save handling * refine kill switch settings behavior after PR review * tighten non-admin kill switch settings handling * prevent non-admin users from applying or implying kill switch changes when elevation is required * improve state synchronization around the kill switch option * harden WireSock UI tunnel lifecycle handling * ensure tunnel cleanup paths consistently release native state * improve robustness around connect/disconnect transitions * address follow-up and latest PR review comments
* feat(wiresockui): add kill switch toggle and harden tunnel lifecycle Add WireSock UI support for the wgbooster kill switch and improve related settings, validation, and tunnel lifecycle handling. * add a wgbooster kill switch toggle * wire kill switch state into settings load/save handling * refine kill switch settings behavior after PR review * tighten non-admin kill switch settings handling * prevent non-admin users from applying or implying kill switch changes when elevation is required * harden tunnel lifecycle handling around connect/disconnect paths * improve cleanup reliability for native tunnel state * fix reliability and validation issues surfaced during review * address follow-up and latest PR review comments
* fix(wiresockui): require elevation for driver access and avoid redundant autorun updates Harden WireSock UI startup and settings behavior around privileged driver access and autorun persistence. * require elevation before accessing the WireSock driver * fail early instead of attempting driver operations from a non-elevated process * improve reliability of privileged tunnel/driver lifecycle paths * avoid redundant autorun updates when the requested autorun state already matches the saved state * reduce unnecessary registry writes and settings churn
* fix: address production review hardening issues Apply production-review fixes and PR follow-up hardening across validation, ACL handling, cleanup, path normalization, timeout behavior, and diagnostics. * fix reliability and validation issues surfaced during production review * address PR review hardening feedback * clarify app-local DLL warning behavior * tighten ACL handling and review comments * improve timeout handling and time formatting * harden async timeout behavior * address migration and ownership edge cases * improve cleanup resilience * normalize paths consistently * reduce redundant work in performance-sensitive timeout paths * address follow-up review comments
* fix(wiresockui): harden cleanup, monitor faults, and profile imports Apply production-review follow-up fixes and PR hardening around cleanup, monitor lifecycle, and profile import safety. * fix production review follow-up issues * fix nested status image cleanup * improve cleanup resilience for nested UI/status resources * stop restarting the monitor after worker faults * prevent faulted worker state from being hidden by automatic restart behavior * handle unsafe imported profile destinations safely * validate or reject imported profile destinations that should not be trusted * address PR review comments * address follow-up PR comments
* fix(wiresockui): harden tunnel lifecycle and profile handling Harden WireSock UI tunnel lifecycle, profile handling, DLL discovery, and timeout cleanup paths. * improve tunnel lifecycle handling around connect, disconnect, and cleanup paths * harden profile import and profile destination handling * address PR review hardening feedback * validate the WireSock directory before probing for DLLs * avoid loading or trusting DLL candidates from unsafe or unexpected locations * improve diagnostics around DLL discovery failures * observe timed-out connect cleanup tasks so failures are not silently lost * ensure timed-out connection attempts still complete their cleanup path * reduce the risk of stale tunnel state after failed or timed-out connects
* fix(wiresockui): harden tunnel cleanup and legacy migration Harden WireSock UI cleanup, migration, and native interop paths. * improve tunnel cleanup reliability * harden legacy profile/config migration handling * address PR review comments * match native file information packing for correct interop layout * reduce the risk of stale native state after cleanup or migration failures * improve compatibility with native file metadata structures
* fix(wiresockui): harden native recovery and profile migration Harden WireSock UI native recovery and legacy profile migration paths. * improve native recovery handling after tunnel or SDK failures * keep native recovery state sticky so later UI flows cannot accidentally treat the native layer as healthy * preserve recovery diagnostics across follow-up operations * harden profile migration from legacy formats * avoid partially migrated or unsafe profile state after migration failures * improve cleanup behavior around recovery and migration errors * address native recovery review comments * address follow-up PR review comments
* fix(wiresockui): harden kill switch reconnect and profile imports Harden WireSock UI reconnect behavior around the kill switch and improve profile import safety. * harden kill switch handling during reconnect flows * preserve safe recovery behavior when reconnecting after tunnel or native-layer failures * avoid clearing recovery state too early during reconnect attempts * validate imported profiles more defensively * reject or sanitize unsafe imported profile fields before they can affect tunnel setup * improve recovery-marker handling after review feedback * keep recovery diagnostics consistent across reconnect and import paths * address recovery marker review comments
* fix(wiresockui): harden profile validation and autorun ownership Harden WireSock UI profile validation, autorun ownership handling, and native recovery marker persistence. * tighten validation for imported and migrated profiles * reject unsafe or malformed profile data before it can affect tunnel setup * improve diagnostics for malformed source paths * handle PR review edge cases around profile import and validation * harden autorun ownership checks so settings are not overwritten or claimed incorrectly * avoid redundant or unsafe autorun state changes * simplify native recovery marker persistence * keep recovery state reliable without unnecessary persistence complexity * address follow-up PR review comments
* fix(wiresockui): harden kill switch settings and recovery UI Harden WireSock UI kill switch settings behavior and recovery-state presentation. * tighten kill switch settings validation * avoid implying kill switch changes were applied when elevation or native state prevents them * preserve safe recovery behavior around kill switch reconnect flows * improve recovery UI messaging and state handling * keep recovery markers visible until the underlying native state is known to be healthy * prevent stale or partial recovery state from being cleared too early * address kill switch recovery review comments
* fix: address production review hardening issues Apply production-review hardening fixes and PR follow-up cleanup. * harden reliability and validation paths surfaced during production review * address PR review comments * tighten edge-case handling around reviewed failure paths * improve diagnostics and cleanup behavior where needed * keep behavior aligned with the hardened review posture
* fix(wiresockui): harden elevated storage and notification asset handling Harden WireSock UI elevated storage, profile handling, notification icon reuse, and cleanup paths. * harden elevated storage handling for profile and runtime state * improve profile import and migration validation * address storage and cleanup review comments * improve notification icon cleanup diagnostics * handle unexpected notification icon directories safely * clarify diagnostics for invalid notification icon directory state * harden notification icon reuse behavior * move the notification icon to a readable asset folder * require ACL refresh before reusing an existing notification icon * improve reparse-point test coverage around notification assets * address import and notification review comments * address notification reuse and reparse test comments * clean up related log handling
* Harden elevated native loading and config validation
* Harden wgbooster integration and SDK compatibility
* Harden direct SDK lifecycle and production readiness
* Harden native SDK lifecycle and compatibility
* Harden SDK monitoring and compatibility checks
* Harden settings, profiles, and SDK verification
* Harden privileged settings and tunnel recovery
* Harden recovery profiles and log handling
* Improve tunnel recovery and runtime bounds
* Harden startup enumeration and native recovery
* Harden profile transactions and CI validation
* Harden runtime integrity and CI tooling * Reject missing X25519 peer keys
* Harden SDK compatibility and lifecycle reliability * Require usable entries in routing lists
* fix: harden production reliability and security Improve production reliability and security across profile formatting, configuration diagnostics, startup migration, and task-state handling. Fix profile output with trailing delimiters, preserve accurate casing in unsupported-directive diagnostics, and handle unreadable legacy startup shortcuts without failing migration unexpectedly. Protect shared snapshots from unsafe access and document the mapping between internal and system task priorities.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hi! Thank you for your interest in Wiresock. I wanted to suggest that your application may be more efficient if you call the wgbooster.dll directly instead of starting the wiresock-vpn-client application. This would allow you to integrate the VPN functionality more closely with your application, potentially improving performance and giving you more control over the VPN connection.
I have not had a chance to test the C# file that is proposed in this PR, but if you encounter any issues, I would be happy to help you resolve them.