Skip to content

Remove hidden NetGuard lockdown feature#542

Merged
kasnder merged 2 commits intomasterfrom
claude/remove-netguard-lockdown
Apr 4, 2026
Merged

Remove hidden NetGuard lockdown feature#542
kasnder merged 2 commits intomasterfrom
claude/remove-netguard-lockdown

Conversation

@kasnder
Copy link
Copy Markdown
Member

@kasnder kasnder commented Apr 3, 2026

  • Identify build failure: missing } for disable_on_call block in ActivitySettings.java (accidentally removed with lockdown code)
  • Fix: add the missing closing brace at line 592

NetGuard's app lockdown feature was hidden in TrackerControl
(menu_lockdown had android:visible="false") and the "lockdown" pref
defaulted to false with no UI to enable it. Remove all related code:

- ServiceSinkhole: isLockedDown(), prepareUidIPFilters lockdown check,
  NOTIFY_LOCKDOWN constant, showLockdownNotification/removeLockdownNotification,
  notification icon lock/rocket conditional, lockdown SharedPreferences cleanup
- Rule: lockdown field and SharedPreferences loading
- AdapterRule: lockdown persistence and related-app propagation
- ActivityMain: hidden menu item handler, legend lockdown icon
- ActivitySettings: lockdown_wifi/lockdown_other pref listener,
  lockdown export/import in XML backup
- XML: menu_lockdown item, legend lockdown entry

Note: Android system VPN lockdown detection (always_on_vpn_lockdown in
Settings.Secure) used in ActivityOnboarding and ActivityMain is preserved
— that's a different feature that warns users about the system "Block
connections without VPN" setting.

https://claude.ai/code/session_01PuXevPG3gUKEXWHrgRMptV
@kasnder
Copy link
Copy Markdown
Member Author

kasnder commented Apr 3, 2026

@copilot the build fails

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 3, 2026

@copilot the build fails

Fixed in 0ac34d4. The lockdown removal accidentally deleted the closing } for the disable_on_call block in ActivitySettings.java, causing two compile errors ("else without if" at line 595 and "illegal start of expression" at line 842). Added the missing brace back.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • dl.google.com
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java /usr/lib/jvm/temurin-17-jdk-amd64/bin/java --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED --add-opens=java.xml/javax.xml.namespace=ALL-UNNAMED -Xmx4608m -Dfile.encoding=UTF-8 -Duser.country -Duser.language=en -Duser.variant -cp /home/REDACTED/.gradle/wrapper/dists/gradle-8.13-bin/5xuhj0ry160q40clulazy9h7d/gradle-8.13/lib/gradle-daemon-main-8.13.jar (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

@kasnder kasnder merged commit 3dafe04 into master Apr 4, 2026
1 check passed
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.

3 participants