Skip to content

v6.9.16

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 15 Jun 06:37

Deep Engineering Audit

12 correctness, reliability, and security fixes from an end-to-end audit.

Fixed

  • Blocklist data loss on periodic refresh — when all sources returned HTTP 304 Not Modified, the blocklist was silently rebuilt with zero source domains, removing all ad/tracker blocking until the next non-304 update
  • Regex rules missing from VPN rebuild — user regex block/allow rules were silently ignored at VPN start until the next background worker run
  • Per-app DNS rule cache race — brief window during reload where all per-app DNS rules were dropped
  • EDE JSON injection — block reasons with quotes/backslashes produced malformed JSON in Extended DNS Error responses
  • VPN stability metrics lost on DB failure — dropped query and error counters were silently zeroed
  • VPN restart coroutine leaks — recovery monitor and config observer accumulated on every network change
  • DNS cache TTL overcapping — all upstream TTLs above 300s were silently capped to 5 minutes, causing excessive upstream queries
  • Hourly chart timezone mismatch — blocked/total/latency charts showed UTC hours instead of local timezone
  • Threat-intel domain swap race — brief false-negative window during feed refresh
  • GeoIP cache unbounded growth — in-memory cache grew without limit for the VPN session lifetime

Security

  • Added legacy fullBackupContent rules for API 26-30 so cloud backup exclusions apply on Android 8-11
  • Restricted FileProvider paths from entire directory trees to specific subdirectories

Build

  • Removed dead ProGuard rules and overly broad Compose R8 keeps that prevented tree-shaking