Commit Graph
5 Commits
Author SHA1 Message Date
Stan Grishin e985d16da4 https-dns-proxy: update to 2026.05.06-1
Maintainer: me
Compile tested: x86_64, Dell EMC Edge620, OpenWrt 25.12.4
Run tested: x86_64, Dell EMC Edge620, OpenWrt 25.12.4

Description:
Update to 2026.05.06 and add IP family option

  - Update PKG_VERSION to 2026.05.06
  - Update PKG_RELEASE to 1
  - Add PKG_CPE_ID for CVE tracking
  - Update PKG_MIRROR_HASH and PKG_SOURCE_VERSION

files/etc/config/https-dns-proxy:
  - Add comments for default options
  - Add new 'force_ip_family' option to control IP family for resolvers
  - Update default 'bootstrap_dns' to include IPv6 addresses

files/etc/init.d/https-dns-proxy:
  - Add DEFAULT_BOOTSTRAP4 and DEFAULT_BOOTSTRAP6 for family fallbacks
  - Change 'global_force_ipv6' to 'global_force_ip_family' for new option
  - Modify append_boot to filter bootstrap DNS by 'force_ip_family'
  - Implement fallback bootstrap DNS for forced IP families with no
    compatible configured servers
  - Change 'start_instance' to use 'force_ip_family' instead of
    'force_ipv6'
  - Ensure 'service_started' and 'service_stopped' always return 0 to
    prevent incorrect failure reports for `start`/`reload`/`restart`
    commands

files/etc/uci-defaults/50-https-dns-proxy-migrate-options.sh:
  - Migrate 'force_ipv6_resolvers' option to 'force_ip_family' option
  - Remove old 'force_ipv6_resolvers' option after migration

Signed-off-by: Stan Grishin <stangri@melmac.ca>
(cherry picked from commit 0833198eef)
Signed-off-by: Stan Grishin <stangri@melmac.ca>
2026-07-19 13:54:30 +03:00
Stan Grishin ab502812e4 https-dns-proxy: update to 2026.03.18-4
Maintainer: me
Compile tested: x86_64, Dell EMC Edge620, OpenWrt 25.12.1
Run tested: x86_64, Dell EMC Edge620, OpenWrt 25.12.1

Description:
Robustify nftables notrack generation

  - Bump PKG_RELEASE to 4.
  - Add install rule to create /usr/share/nftables.d/ruleset-post.

files/etc/init.d/https-dns-proxy:
  - Check if 'nft' command exists before generating rules.
  - Add robust error handling for directory creation and file writing.
  - Log errors when directory creation or file writing fails.

tests/run_tests.sh:
  - Add test case for 'nft' binary absence, confirming no-op behavior.
  - Add test case for mkdir failure during notrack rule generation.

Signed-off-by: Stan Grishin <stangri@melmac.ca>
(cherry picked from commit 5b87914713)
Signed-off-by: Stan Grishin <stangri@melmac.ca>
2026-06-19 13:11:58 -07:00
Stan Grishin eff4ea9cf3 https-dns-proxy: update to 2026.03.18-3
Maintainer: me
Compile tested: x86_64, Dell EMC Edge620, OpenWrt 25.12.1
Run tested: x86_64, Dell EMC Edge620, OpenWrt 25.12.1

Description:
update to 2026.03.18, release 3

  - update PKG_RELEASE to 3

files/etc/init.d/https-dns-proxy:
  - refactor nftable rules to explicitly add and flush the table and
    chains instead of block replacement
  - make nftable `delete table` call silent in `notrack_nft remove`
  - update `notrack_nft remove` to check for absence of nftable table
    instead of just checking the file
  - ensure `notrack_nft remove` sets _error=1 on failure
  - ignore dnsmasq instances with port 0 in
    `dnsmasq_instance_append_force_dns_port`

tests/run_tests.sh:
  - add test case to ensure dnsmasq port 0 is ignored
  - update `notrack_nft remove` test to confirm success when both file
    and table are absent

Signed-off-by: Stan Grishin <stangri@melmac.ca>
(cherry picked from commit 4bac71e3cd)
Signed-off-by: Stan Grishin <stangri@melmac.ca>
2026-05-11 09:37:01 -07:00
Stan Grishin 8c1a56f2f5 https-dns-proxy: update to 2026.03.18-2
Maintainer: me
Compile tested: x86_64, Dell EMC Edge620, OpenWrt 25.12.1
Run tested: x86_64, Dell EMC Edge620, OpenWrt 25.12.1

Description:
Fix nftables rule directory creation

  - Bump PKG_RELEASE to 2.

files/etc/init.d/https-dns-proxy:
  - Add 'mkdir -p' before writing nftables rules to ensure the parent
    directory exists. This fixes an issue where the directory might not
    exist on initial installation, causing errors.

tests/run_tests.sh:
  - Add comprehensive regression tests for notrack_nft.
  - Mock 'nft' to track invocations and control return codes for testing.
  - Patch 'NOTRACK_NFT_FILE' to a test-specific path for isolated testing.
  - Verify 'notrack_nft' correctly creates the parent directory if missing.
  - Test content of generated nftables snippet, idempotence, and removal.

Signed-off-by: Stan Grishin <stangri@melmac.ca>
(cherry picked from commit 3d9a73bd7e)
Signed-off-by: Stan Grishin <stangri@melmac.ca>
2026-05-07 09:59:34 -07:00
Stan Grishin a57fbe29f0 https-dns-proxy: update to 2025.12.29-4
* add explicit LICENSE file to the repository
* pretty up Makefile
* minor shell script styling improvements
* better parsing if individual dnsmasq instances are used in config
* functional test

Signed-off-by: Stan Grishin <stangri@melmac.ca>
(cherry picked from commit eea712197e)
Signed-off-by: Stan Grishin <stangri@melmac.ca>
2026-03-03 17:43:36 -08:00