Skip to content

Feature/isp presets - #854

Open
vietthai104 wants to merge 9 commits into
ValdikSS:masterfrom
vietthai104:feature/isp-presets
Open

vietthai104 wants to merge 9 commits into
ValdikSS:masterfrom
vietthai104:feature/isp-presets

Conversation

@vietthai104

Copy link
Copy Markdown

Add TUI and presets for Steam + ISP from Vietnam

vietthai104 and others added 9 commits October 4, 2026 18:10
Presets are expanded into argv before getopt runs, so existing option
handling is untouched. --blacklist-builtin loads a compiled-in domain
list (currently: steam) through the existing blacklist hash table.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Builds a goodbyedpi.exe command line from a preset, DNS choice and a
few switches, then runs goodbyedpi.exe from the same folder. Separate
executable that does not link WinDivert; built by the default make
target and included in CI artifacts.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Without it the cross-compiled TUI needs libssp-0.dll at runtime.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
goodbyedpi.exe runs hidden as a child of the TUI (kill-on-close job
object), the console is closed and a notification-area icon stays with
an Exit item. The TUI waits for the "is now running" line through a
pipe so startup errors are still shown. goodbyedpi.exe stdout is now
unbuffered so that line arrives immediately. Also adds
`goodbyedpi-tui.exe --tray [preset]`.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
sign-selfsigned.ps1 signs the two exes with a certificate kept in the
user's store. trust-selfsigned.ps1 (admin) imports the public cert into
the machine's trusted stores, with -Remove to undo. Key material and
dist/ are git-ignored.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Tests every IP a Steam hostname resolves to with the real SNI and with
a neutral one, to run before and after starting goodbyedpi.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
The driver stays loaded after goodbyedpi.exe exits and keeps
WinDivert64.sys locked. After the child has exited (tray Exit, failed
start, or the foreground run ending) the TUI stops the "WinDivert"
service and deletes it. Best effort: nothing happens if another program
still uses the driver.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant