Repository navigation
Windows 4.2.0 - #258
Merged
Merged
Windows 4.2.0#258
Conversation
…ding - Installer: lock the install folder (SYSTEM/Administrators full, Users read+execute); the SYSTEM service runs from it, and a folder chosen outside Program Files is usually writable by every user. - Pipes: the service creates every instance with FILE_FLAG_FIRST_PIPE_INSTANCE so another process cannot squat the name. The GUI only talks to the process the SCM reports as ProxyBridgeSvc (PID check) and opens the pipe with SECURITY_IDENTIFICATION, so proxy credentials cannot be handed to a rogue server. - DLL loading: the GUI no longer falls back to the DLL search path for ProxyBridgeCore.dll; GUI and CLI load it by absolute path with dependencies from its folder or System32 only.
…ine DLL and service Only the GUI had a VERSIONINFO resource. A shared template (gui/res/pbver.inc) plus one small .rc per binary now gives the CLI, ProxyBridgeCore.dll and ProxyBridgeSvc.exe a file description, version, product name and copyright; compile.ps1 compiles and links them.
build(linux): ship setup.sh in the output folder
…ter shared with the Windows format pb_profile parses and writes the Windows/macOS profile JSON with bounded depth and size, strict validation (unknown proxy ids, types, ports are errors) and atomic 0600 writes. Domain names are split into TargetDomains on export and merged into the host list on import.
One file per profile under /etc/proxybridge/profiles plus settings.json, converted from config.ini on first start. Unchanged profiles are not rewritten. Docs, unit tests, headless GUI test and CI cover the new format.
settings.json now only names the active profile. Switching profiles also switches the Enable Traffic Logging and DNS via Proxy values.
… the global toggle) Each rule has an 'Also proxy localhost traffic' checkbox (shown only when the rule's action is a proxy). Connections to 127.x / ::1 that match a PROXY rule go direct unless that rule's box is ticked, so e.g. a browser rule can proxy localhost while a curl rule keeps it direct. The global 'Localhost via Proxy' menu item, ProxyBridge_SetLocalhostViaProxy and PBOP_SET_LOCALHOST are removed; AddRule/EditRule take a per-rule flag and the service protocol is now version 2. Profiles store LocalhostViaProxy per rule; an old profile's global value is used as the default for its rules, so existing profiles behave as before. README updated.
The Target Host limit goes from 511 to 8191 characters and from 64 to 1024 entries (process and port lists keep their limits). The GTK rule editor uses a multiline box; line breaks are display-only and are removed by gui_list.c before the text reaches the engine. Adds unit tests for the new limits and for the list helpers.
…r lists, multiline editor Target Hosts and Target Domains are one list in the GUI: IPs, ranges and domain names can be mixed, up to 8191 characters, with one entry per line allowed (line breaks are display-only). The engine now matches a rule's host part when the IP matches an IP entry OR the resolved name matches a domain entry (it used to require both). Profiles still store TargetHosts and TargetDomains, so other apps and older versions read them unchanged; the GUI and CLI sort entries by type. Also: UTF-8/UTF-16 conversions always NUL-terminate, buffers are sized for the worst case, the CLI profile moved off the stack, and the rule list loses its Domains column. README updated.
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Pull Request
Required Pre-Submission Checklist
devbranch (NOTmaster)masterbranch is ONLY updated when a new release is createdmasterwill be REJECTED⛔ Critical Information
DO NOT submit a pull request directly to the
masterbranch. The master branch is only updated when a new release is created. No direct commits or merges are accepted to master - neither from the InterceptSuite team nor from contributors.All changes MUST be submitted to the
devbranch, which contains the latest code and commits.You MUST create a GitHub issue first before submitting a pull request. This allows the InterceptSuite team to:
Pull requests without an associated issue will be rejected.
Pull Request Details
Type of Change
Related GitHub Issue
Issue Link:
Platform(s) Affected
macOS Application Changes
Does this pull request include changes to the macOS application?
If YES, you MUST answer the following:
macOS Code Signing & Verification
Description of Changes
What does this pull request do?
How has this been tested?
Compilation & Dependencies
New dependencies (if any):
Screenshots/Logs (if applicable)
Additional Context
Final Checklist
devbranch