]> git.ipfire.org Git - thirdparty/knot-dns.git/log
thirdparty/knot-dns.git
3 months agoMerge branch 'redis'
Daniel Salzman [Fri, 12 Sep 2025 15:02:04 +0000 (17:02 +0200)] 
Merge branch 'redis'

3 months agodoc: extend introduction requirements, configuration, and operation with database...
Daniel Salzman [Tue, 9 Sep 2025 13:54:56 +0000 (15:54 +0200)] 
doc: extend introduction requirements, configuration, and operation with database zone backend

3 months agodoc: add reference for redis-related options
Libor Peltan [Mon, 28 Jul 2025 15:03:16 +0000 (17:03 +0200)] 
doc: add reference for redis-related options

3 months agoredis: write RRsets in batches to reduce processing overhead
Daniel Salzman [Thu, 4 Sep 2025 08:15:10 +0000 (10:15 +0200)] 
redis: write RRsets in batches to reduce processing overhead

3 months agoredis: keep DB conns open and stored in conn_pool
Libor Peltan [Mon, 11 Aug 2025 13:45:13 +0000 (15:45 +0200)] 
redis: keep DB conns open and stored in conn_pool

3 months agoredis: load from DB within zone loading
Libor Peltan [Mon, 28 Jul 2025 15:03:37 +0000 (17:03 +0200)] 
redis: load from DB within zone loading

3 months agoredis: write to DB from zone_update_commit()
Libor Peltan [Sun, 27 Jul 2025 14:59:48 +0000 (16:59 +0200)] 
redis: write to DB from zone_update_commit()

3 months agoknot: prepare for integration of the Redis backend
Daniel Salzman [Tue, 28 Jan 2025 13:34:34 +0000 (14:34 +0100)] 
knot: prepare for integration of the Redis backend

3 months agoredis: initial implementation of a Knot module for Redis
Jan Hák [Fri, 17 Jan 2025 07:28:15 +0000 (08:28 +0100)] 
redis: initial implementation of a Knot module for Redis

3 months agotests-extra: initial support for testing Knot with Redis backend
Libor Peltan [Sun, 27 Jul 2025 08:56:38 +0000 (10:56 +0200)] 
tests-extra: initial support for testing Knot with Redis backend

3 months agotests-redis: introduce redis module unit tests
Jan Hák [Fri, 18 Jul 2025 13:03:11 +0000 (15:03 +0200)] 
tests-redis: introduce redis module unit tests

3 months agoDockerfile: enable Redis
Daniel Salzman [Tue, 29 Jul 2025 15:51:01 +0000 (17:51 +0200)] 
Dockerfile: enable Redis

3 months agodistro/rpm: add redis-knot subpackage
Jakub Ružička [Mon, 11 Aug 2025 10:55:16 +0000 (12:55 +0200)] 
distro/rpm: add redis-knot subpackage

3 months agodistro/deb: add redis-knot subpackage
Daniel Salzman [Thu, 12 Jun 2025 13:06:49 +0000 (15:06 +0200)] 
distro/deb: add redis-knot subpackage

3 months agoconfigure: prepare for Redis
Daniel Salzman [Fri, 24 Jan 2025 07:31:43 +0000 (08:31 +0100)] 
configure: prepare for Redis

3 months agoredis: fix a few compile warnings in the module API
Daniel Salzman [Fri, 25 Jul 2025 09:14:11 +0000 (11:14 +0200)] 
redis: fix a few compile warnings in the module API

3 months agocontrib: add redismodule.h version 7.0
Daniel Salzman [Thu, 16 Jan 2025 09:56:53 +0000 (10:56 +0100)] 
contrib: add redismodule.h version 7.0

From https://github.com/RedisLabsModules/RedisModulesSDK/blob/master/7.0/redismodule.h

3 months agobase32hex: rename MAX_BIN_DATA_LEN to avoid name collision
Daniel Salzman [Sun, 8 Jun 2025 17:02:55 +0000 (19:02 +0200)] 
base32hex: rename MAX_BIN_DATA_LEN to avoid name collision

3 months agobase64: rename PD and MAX_BIN_DATA_LEN to avoid name collisions
Daniel Salzman [Sun, 8 Jun 2025 16:57:54 +0000 (18:57 +0200)] 
base64: rename PD and MAX_BIN_DATA_LEN to avoid name collisions

3 months agozscanner: rename wire_dname_to_str() to dname_to_str() to avoid name collision
Daniel Salzman [Sun, 8 Jun 2025 16:53:21 +0000 (18:53 +0200)] 
zscanner: rename wire_dname_to_str() to dname_to_str() to avoid name collision

3 months agolibknot: add knot_rdata_to_canonical()
Daniel Salzman [Sat, 7 Jun 2025 15:13:33 +0000 (17:13 +0200)] 
libknot: add knot_rdata_to_canonical()

3 months agoMerge branch 'flatten' into 'master'
Daniel Salzman [Fri, 12 Sep 2025 07:50:58 +0000 (09:50 +0200)] 
Merge branch 'flatten' into 'master'

Subzone inclusion

See merge request knot/knot-dns!1805

3 months agotests-extra: fix response.check() to check both rdata and nordata
Daniel Salzman [Fri, 12 Sep 2025 07:28:15 +0000 (09:28 +0200)] 
tests-extra: fix response.check() to check both rdata and nordata

3 months agoconf: fix knotd_conf_check_args_t.id value when calling from file parsing
Daniel Salzman [Thu, 11 Sep 2025 14:53:20 +0000 (16:53 +0200)] 
conf: fix knotd_conf_check_args_t.id value when calling from file parsing

3 months agozone: implemented including records from subzone(s)
Libor Peltan [Thu, 11 Sep 2025 14:54:42 +0000 (16:54 +0200)] 
zone: implemented including records from subzone(s)

3 months agozone/reverse: refactoring: pointer at reversed zone is a structure
Libor Peltan [Wed, 10 Sep 2025 15:48:32 +0000 (17:48 +0200)] 
zone/reverse: refactoring: pointer at reversed zone is a structure

3 months agoMerge branch 'event_loop_speed' into 'master'
David Vasek [Thu, 11 Sep 2025 16:23:31 +0000 (18:23 +0200)] 
Merge branch 'event_loop_speed' into 'master'

Tune the start-detection/loaded-detection loop in knotd.

See merge request knot/knot-dns!1803

3 months agoknotd/check_loaded: refactoring: all computations in milliseconds
Libor Peltan [Tue, 9 Sep 2025 07:08:11 +0000 (09:08 +0200)] 
knotd/check_loaded: refactoring: all computations in milliseconds

3 months agocontrib/time: add millisecond time functions
Libor Peltan [Tue, 9 Sep 2025 07:08:11 +0000 (09:08 +0200)] 
contrib/time: add millisecond time functions

3 months agocontrib/macros: allow mutually nested MIN(MAX(...))
Libor Peltan [Tue, 9 Sep 2025 07:07:44 +0000 (09:07 +0200)] 
contrib/macros: allow mutually nested MIN(MAX(...))

3 months agoknotd: tune the start-detection/loaded-detection loop
David Vašek [Tue, 5 Aug 2025 10:47:56 +0000 (12:47 +0200)] 
knotd: tune the start-detection/loaded-detection loop

Tune the start-detection loop to be dependent on the system performance and the zonedb size.
The sleep time is set to be double of the time to walk through whole zonedb, with upper and
lower limits.

Sleep time in the loaded-detection loop is constant for one minute, then starts to grow
exponentially. It starts at 1 second or at the start-detection sleep time, whichever is higher,
and stops at an upper limit.

3 months agoexporter: add missing connection close
Daniel Salzman [Wed, 10 Sep 2025 11:13:55 +0000 (13:13 +0200)] 
exporter: add missing connection close

3 months agoMerge branch 'quic_retry_readpkt' into 'master'
Daniel Salzman [Tue, 9 Sep 2025 13:23:03 +0000 (15:23 +0200)] 
Merge branch 'quic_retry_readpkt' into 'master'

libknot/QUIC: send RETRY packet if indicated also by ngtcp2_conn_read_pkt

See merge request knot/knot-dns!1804

3 months agolibknot/QUIC: send RETRY packet if indicated also by ngtcp2_conn_read_pkt
Libor Peltan [Tue, 9 Sep 2025 08:16:55 +0000 (10:16 +0200)] 
libknot/QUIC: send RETRY packet if indicated also by ngtcp2_conn_read_pkt

3 months agoconf: fix check for allowed empty reference
Daniel Salzman [Fri, 5 Sep 2025 18:41:21 +0000 (20:41 +0200)] 
conf: fix check for allowed empty reference

Fixes 4784c4c60199afa85daec96c70fa04daf0705efe

3 months agodoc: add a warning to zone-begin and improve other related parts
Daniel Salzman [Fri, 5 Sep 2025 08:30:49 +0000 (10:30 +0200)] 
doc: add a warning to zone-begin and improve other related parts

3 months agodoc: rework mod-cookies examples
Daniel Salzman [Tue, 2 Sep 2025 14:02:13 +0000 (16:02 +0200)] 
doc: rework mod-cookies examples

3 months agoMerge branch 'masters_mult_notify' into 'master'
Daniel Salzman [Fri, 5 Sep 2025 05:53:42 +0000 (07:53 +0200)] 
Merge branch 'masters_mult_notify' into 'master'

XFR/master-selection: try all masters if more than one sent NOTIFY

See merge request knot/knot-dns!1801

3 months agoXFR/master-selection: try all masters if more than one sent NOTIFY
Libor Peltan [Wed, 20 Aug 2025 14:02:53 +0000 (16:02 +0200)] 
XFR/master-selection: try all masters if more than one sent NOTIFY

3 months agoMerge branch 'rrset_dump_errors' into 'master'
Daniel Salzman [Thu, 4 Sep 2025 11:28:12 +0000 (13:28 +0200)] 
Merge branch 'rrset_dump_errors' into 'master'

Rrset dump errors

See merge request knot/knot-dns!1800

3 months agolibknot/rrdump: write syntactically or semantically malformed RRs in generic format
Libor Peltan [Tue, 19 Aug 2025 15:25:56 +0000 (17:25 +0200)] 
libknot/rrdump: write syntactically or semantically malformed RRs in generic format

3 months agolibknot/rrdump: correct error code instead of always ESPACE
Libor Peltan [Tue, 19 Aug 2025 15:22:19 +0000 (17:22 +0200)] 
libknot/rrdump: correct error code instead of always ESPACE

3 months agodoc: remove misleading note for mod-cookies
Daniel Salzman [Fri, 29 Aug 2025 18:18:38 +0000 (20:18 +0200)] 
doc: remove misleading note for mod-cookies

3 months agoMerge branch 'jpmens-master-patch-16168' into 'master'
Daniel Salzman [Fri, 29 Aug 2025 18:12:21 +0000 (20:12 +0200)] 
Merge branch 'jpmens-master-patch-16168' into 'master'

Clarify -j doesn't apply to TSIG keys.

See merge request knot/knot-dns!1802

3 months agoClarify -j doesn't apply to TSIG keys.
JP Mens [Fri, 29 Aug 2025 14:29:03 +0000 (16:29 +0200)] 
Clarify -j doesn't apply to TSIG keys.

3 months agolibngtcp2: update embedded library to v1.15.0
Daniel Salzman [Sat, 23 Aug 2025 06:41:27 +0000 (08:41 +0200)] 
libngtcp2: update embedded library to v1.15.0

3 months agoserver: remove no longer needed include
Daniel Salzman [Tue, 19 Aug 2025 17:42:06 +0000 (19:42 +0200)] 
server: remove no longer needed include

3 months agoNEWS: synchronize with 3.3 and 3.4
Daniel Salzman [Mon, 18 Aug 2025 06:45:40 +0000 (08:45 +0200)] 
NEWS: synchronize with 3.3 and 3.4

3 months agoctl: return Loading from status when not in the ServerAnswering state
Daniel Salzman [Tue, 29 Jul 2025 12:39:19 +0000 (14:39 +0200)] 
ctl: return Loading from status when not in the ServerAnswering state

3 months agonet: fix unused warning on some systems
Daniel Salzman [Sat, 16 Aug 2025 16:40:28 +0000 (18:40 +0200)] 
net: fix unused warning on some systems

4 months agopython: uncomment zone-status filter 'u' in the doc
Daniel Salzman [Fri, 15 Aug 2025 05:22:34 +0000 (07:22 +0200)] 
python: uncomment zone-status filter 'u' in the doc

4 months agolibs: increase SOVERSION and symbol versions for libknot, libdnssec, and libzscanner
Daniel Salzman [Thu, 14 Aug 2025 05:40:08 +0000 (07:40 +0200)] 
libs: increase SOVERSION and symbol versions for libknot, libdnssec, and libzscanner

4 months agoMerge branch 'kdig-doc-keepopen' into 'master'
Daniel Salzman [Wed, 13 Aug 2025 06:14:00 +0000 (08:14 +0200)] 
Merge branch 'kdig-doc-keepopen' into 'master'

man/kdig: add quic to protocols which support keepopen

See merge request knot/knot-dns!1798

4 months agoman/kdig: add quic to protocols which support keepopen
Frantisek Tobias [Tue, 12 Aug 2025 12:39:33 +0000 (14:39 +0200)] 
man/kdig: add quic to protocols which support keepopen

4 months agoMerge branch 'zonemd_troubles' into 'master'
Daniel Salzman [Tue, 12 Aug 2025 17:04:26 +0000 (19:04 +0200)] 
Merge branch 'zonemd_troubles' into 'master'

zonemd/placeholder: dont use zero-length digest...

See merge request knot/knot-dns!1797

4 months agokjournalprint: dont silently skip failed knot_rrset_txt_dump
Libor Peltan [Tue, 12 Aug 2025 09:56:46 +0000 (11:56 +0200)] 
kjournalprint: dont silently skip failed knot_rrset_txt_dump

4 months agozonemd/placeholder: dont use zero-length digest...
Libor Peltan [Tue, 12 Aug 2025 15:02:47 +0000 (17:02 +0200)] 
zonemd/placeholder: dont use zero-length digest...

...as its presentation format is undefined and therefore it's
impossible to read/write in case of any debug situation

4 months agotests-extra: adjust random tsig parameters to be less annoying
Daniel Salzman [Mon, 11 Aug 2025 13:51:52 +0000 (15:51 +0200)] 
tests-extra: adjust random tsig parameters to be less annoying

4 months agosemaphore: force nonposix implementation on macOS
Daniel Salzman [Sun, 10 Aug 2025 17:06:29 +0000 (19:06 +0200)] 
semaphore: force nonposix implementation on macOS

This solves two issues:
 - error: undeclared function 'sem_timedwait'
 - warning: 'sem_*' is deprecated

4 months agozonedb: fix possible NULL dereferences (Coverity)
Daniel Salzman [Sun, 10 Aug 2025 05:58:19 +0000 (07:58 +0200)] 
zonedb: fix possible NULL dereferences (Coverity)

4 months agoMerge branch 'conf-commit-optim' into 'master'
Libor Peltan [Tue, 5 Aug 2025 08:52:46 +0000 (10:52 +0200)] 
Merge branch 'conf-commit-optim' into 'master'

Optimize zonedb reload for many zones

See merge request knot/knot-dns!1793

4 months agoman/knotd: extend signal handling
Daniel Salzman [Mon, 4 Aug 2025 08:10:35 +0000 (10:10 +0200)] 
man/knotd: extend signal handling

4 months agozonedb/reverse: bugfix: removal/modification of zone:
Libor Peltan [Sun, 3 Aug 2025 13:35:54 +0000 (15:35 +0200)] 
zonedb/reverse: bugfix: removal/modification of zone:

 * removal of forward zone unlinks all dependent reverses
 * rem/modification of reverse zone first unlinks all to avoid
   leftovers+duplicates

4 months agoserver: optimize catalogs_generate() depending on the reload type
Daniel Salzman [Thu, 24 Jul 2025 06:37:26 +0000 (08:37 +0200)] 
server: optimize catalogs_generate() depending on the reload type

4 months agoserver: refactor catalogs_generate() to extract basic functionality
Daniel Salzman [Wed, 23 Jul 2025 19:52:40 +0000 (21:52 +0200)] 
server: refactor catalogs_generate() to extract basic functionality

4 months agoserver: optimize zonedb-load using qptrie COW where possible
Daniel Salzman [Mon, 21 Jul 2025 12:35:05 +0000 (14:35 +0200)] 
server: optimize zonedb-load using qptrie COW where possible

4 months agoserver: don't iterate through all zones to check reverse-generate when conf-commit
Daniel Salzman [Thu, 17 Jul 2025 10:01:44 +0000 (12:01 +0200)] 
server: don't iterate through all zones to check reverse-generate when conf-commit

4 months agozone-update: fix possible NULL dereference (Coverity)
Daniel Salzman [Mon, 4 Aug 2025 05:55:42 +0000 (07:55 +0200)] 
zone-update: fix possible NULL dereference (Coverity)

4 months agoMerge branch 'zone_free_cow_wait' into 'master'
Daniel Salzman [Mon, 4 Aug 2025 05:58:14 +0000 (07:58 +0200)] 
Merge branch 'zone_free_cow_wait' into 'master'

zone: prevent freeing zone before RCU-delayed update cleanup is finished

See merge request knot/knot-dns!1796

4 months agozone: prevent freeing zone before RCU-delayed update cleanup is finished
Libor Peltan [Sat, 2 Aug 2025 16:32:06 +0000 (18:32 +0200)] 
zone: prevent freeing zone before RCU-delayed update cleanup is finished

4 months agoMerge branch 'external_vldt' into 'master'
Daniel Salzman [Fri, 1 Aug 2025 15:40:50 +0000 (17:40 +0200)] 
Merge branch 'external_vldt' into 'master'

External validation

See merge request knot/knot-dns!1790

4 months agoexternal validation: replace per zone flag ZONE_SHUT_DOWN with server state ServerShu...
Daniel Salzman [Fri, 1 Aug 2025 06:04:29 +0000 (08:04 +0200)] 
external validation: replace per zone flag ZONE_SHUT_DOWN with server state ServerShutting

4 months agoctl: add open-external transaction state to zone-status
Daniel Salzman [Tue, 29 Jul 2025 11:11:11 +0000 (13:11 +0200)] 
ctl: add open-external transaction state to zone-status

4 months agodoc: external-validation process description
Libor Peltan [Thu, 19 Jun 2025 14:49:25 +0000 (16:49 +0200)] 
doc: external-validation process description

4 months agoexternal validation: don't trigger when useless
Libor Peltan [Wed, 18 Jun 2025 13:02:51 +0000 (15:02 +0200)] 
external validation: don't trigger when useless

4 months agosamples: add a validating script
Libor Peltan [Wed, 18 Jun 2025 10:41:34 +0000 (12:41 +0200)] 
samples: add a validating script

4 months agoexternal validation: dump files follow zonefile templating and storage path
Libor Peltan [Wed, 18 Jun 2025 10:41:09 +0000 (12:41 +0200)] 
external validation: dump files follow zonefile templating and storage path

4 months agoexternal-validation: implemented configurable timeout
Libor Peltan [Mon, 16 Jun 2025 15:46:16 +0000 (17:46 +0200)] 
external-validation: implemented configurable timeout

4 months agodbus: signal when external validation is requested
Libor Peltan [Mon, 16 Jun 2025 12:55:07 +0000 (14:55 +0200)] 
dbus: signal when external validation is requested

4 months agozone-update: bugfix: correctly revert adjustments to otherwise unaffected nodes
Libor Peltan [Mon, 16 Jun 2025 09:59:23 +0000 (11:59 +0200)] 
zone-update: bugfix: correctly revert adjustments to otherwise unaffected nodes

4 months agoexternal validation: implemented zone/diff dump
Libor Peltan [Thu, 12 Jun 2025 11:37:16 +0000 (13:37 +0200)] 
external validation: implemented zone/diff dump

4 months agoctl: zone-diff works with UPDATE_NO_CHSET
Libor Peltan [Thu, 12 Jun 2025 09:39:46 +0000 (11:39 +0200)] 
ctl: zone-diff works with UPDATE_NO_CHSET

4 months agoexternal validation: implemented basic functionality
Libor Peltan [Tue, 10 Jun 2025 12:42:55 +0000 (14:42 +0200)] 
external validation: implemented basic functionality

4 months agoMerge branch 'p/nix-sync' into 'master'
Daniel Salzman [Thu, 31 Jul 2025 13:35:20 +0000 (15:35 +0200)] 
Merge branch 'p/nix-sync' into 'master'

distro/pkg/nix: synchronize from downstream nixpkgs

See merge request knot/knot-dns!1795

4 months agodistro/pkg/nix: synchronize from downstream nixpkgs
Vladimír Čunát [Thu, 31 Jul 2025 11:58:34 +0000 (13:58 +0200)] 
distro/pkg/nix: synchronize from downstream nixpkgs

It's mostly just reformat, as nixpkgs has been moving to using
automatic formatting.  But also dnstap has been added, etc.
I checked that `apkg build` works again, of course :-)

4 months agoDockerfile: fix LegacyKeyValueFormat warnings
Daniel Salzman [Tue, 29 Jul 2025 16:01:42 +0000 (18:01 +0200)] 
Dockerfile: fix LegacyKeyValueFormat warnings

4 months agoMerge branch 'zone-reload-expired' into 'master'
Libor Peltan [Mon, 28 Jul 2025 08:03:47 +0000 (10:03 +0200)] 
Merge branch 'zone-reload-expired' into 'master'

Allow zone-reload on expired zone

See merge request knot/knot-dns!1794

4 months agolibngtcp2: update embedded library to v1.14.0
Jan Doskočil [Fri, 25 Jul 2025 15:31:21 +0000 (17:31 +0200)] 
libngtcp2: update embedded library to v1.14.0

4 months agoctl: allow zone-reload on expired zone
Daniel Salzman [Fri, 25 Jul 2025 11:34:24 +0000 (13:34 +0200)] 
ctl: allow zone-reload on expired zone

This operation is useful for resolving issues such as journal inconsistencies.

4 months agodoc: improve description of reverse-generate
Daniel Salzman [Fri, 25 Jul 2025 11:32:20 +0000 (13:32 +0200)] 
doc: improve description of reverse-generate

4 months agoserver: fix possible use after free if member zone is reused when full reload
Daniel Salzman [Fri, 25 Jul 2025 06:19:50 +0000 (08:19 +0200)] 
server: fix possible use after free if member zone is reused when full reload

4 months agoMerge branch 'key_for_auto_use' into 'master'
Daniel Salzman [Mon, 21 Jul 2025 12:33:57 +0000 (14:33 +0200)] 
Merge branch 'key_for_auto_use' into 'master'

keymgr: implement key for-auto pregeneration

See merge request knot/knot-dns!1788

4 months agokeymgr: make log message more general
Daniel Salzman [Mon, 21 Jul 2025 07:03:18 +0000 (09:03 +0200)] 
keymgr: make log message more general

4 months agokeymgr: support colon separators in keyid
Daniel Salzman [Mon, 21 Jul 2025 06:43:36 +0000 (08:43 +0200)] 
keymgr: support colon separators in keyid

4 months agokeymgr: refactoring
Daniel Salzman [Sat, 19 Jul 2025 17:48:04 +0000 (19:48 +0200)] 
keymgr: refactoring

4 months agokeymgr: update help and documentation
Daniel Salzman [Sat, 19 Jul 2025 18:43:47 +0000 (20:43 +0200)] 
keymgr: update help and documentation

4 months agokeymgr: interpret omitted bool argument as true
Daniel Salzman [Sat, 19 Jul 2025 18:17:42 +0000 (20:17 +0200)] 
keymgr: interpret omitted bool argument as true

4 months agokeymgr: implement key for-auto key pregeneration
Libor Peltan [Tue, 8 Jul 2025 09:30:17 +0000 (11:30 +0200)] 
keymgr: implement key for-auto key pregeneration

4 months agoMerge branch 'pkg_keymgr'
Daniel Salzman [Sat, 19 Jul 2025 17:00:29 +0000 (19:00 +0200)] 
Merge branch 'pkg_keymgr'

4 months agodistro/deb: add explicit libdnssec9 for libknot15
Daniel Salzman [Sat, 19 Jul 2025 16:33:01 +0000 (18:33 +0200)] 
distro/deb: add explicit libdnssec9 for libknot15