Libor Peltan
b68d99c1ec
libknot: knot_rrset_equal refactor, add TTL
2019-09-11 11:28:20 +02:00
Jan Hák
c04e509468
geoip: Added support for SRV DNAME that specify service/protocol
...
Description can be found at RFC 2782
2019-09-10 14:06:54 +02:00
Libor Peltan
ee7d582457
ctl/updates: read/search also nsec3 nodes (+refactoring)
2019-09-08 20:28:57 +02:00
Vladimír Čunát
36ef0a0ec7
trie_get_try_wildcard(): more efficient version
...
It's not at all necessary to repeatedly search from the root,
though this optimization makes the code a bit more complex.
Even here, technically the last memcmp() wouldn't need to start at the
beginning, but I didn't want to overcomplicate this.
2019-09-08 17:10:04 +02:00
Jan Hák
63d9d0933e
geoip: added wildcard as possible configuration
2019-09-08 17:10:04 +02:00
Daniel Salzman
46509a5194
libknot: allow parsing multiple EDNS options of the same type
2019-09-06 13:48:22 +02:00
Daniel Salzman
91d35c5a9c
libknot: remove unused and strange functions knot_rdataset_(un)reserve
2019-09-05 16:29:26 +02:00
Libor Peltan
e4a7cd4154
libknot: pre-computing rdataset size
2019-09-05 16:29:26 +02:00
Libor Peltan
f5270348c4
knot: add ds-push event to zone timers
2019-09-05 09:00:00 +02:00
Daniel Salzman
af8628ed1a
knot: unify DS-related event terminology
2019-09-05 09:00:00 +02:00
Daniel Salzman
e5f5855038
Revert unintentionally squashed "dnssec: implemented pushing updated DS to parent"
...
This reverts commit 2dbb39d29a .
2019-09-05 08:59:29 +02:00
Libor Peltan
2dbb39d29a
dnssec: implemented pushing updated DS to parent
2019-09-04 15:15:28 +00:00
Daniel Salzman
799f181ef0
conf: allow cache reinitialization during configuration import
2019-08-26 15:00:08 +02:00
Daniel Salzman
db8b9c0ac9
semantic check: improve glue check if covered by wildcard
2019-08-23 17:10:29 +02:00
Libor Peltan
fbd132114b
semantic check: don't require a glue which is under another delegation
2019-08-22 16:55:01 +02:00
Libor Peltan
e39993e08f
semcheck: check glue even if it shall be in zone not below the delegation
2019-08-22 16:47:36 +02:00
Libor Peltan
6265ddc40e
journal/zone load: create two changeset in case of ixfr/diff
...
first one having a diff of zone history for use by slaves
second one diff between zonefile and zone for use with restart
2019-08-15 14:25:18 +02:00
Libor Peltan
93b08a89b8
changesets: always cancel-out when adding/removing to and merging
2019-08-07 10:22:46 +02:00
Jan Hák
322917486c
conf: add option for setting TCP query timeout
...
fixes #474
2019-07-22 15:13:54 +02:00
David Vašek
725468df17
conf: store the {udp,tcp,background}-workers parametrs in the cache and use those values
2019-07-12 11:27:33 +02:00
David Vašek
f867ac17b3
conf: auto-configure max-tcp-clients
2019-07-12 11:27:33 +02:00
David Vašek
e3d311d8ed
coding style improvements - copyright notice
2019-07-04 15:16:43 +02:00
David Vašek
254b3d4473
tests: fix the knot/test_server closing
2019-06-26 14:58:54 +02:00
Daniel Salzman
83de00c53f
yparser: fix invalid error line number for lines with leading tabulator
2019-06-23 21:54:30 +02:00
Libor Peltan
90e4a8c757
adjust: refactored measurement of zone size and max TTL
2019-05-24 14:08:42 +02:00
Libor Peltan
cee9549feb
optimization: adjusting: mesure zone size incrementally for updates
2019-05-15 10:33:21 +02:00
Libor Peltan
1eee116853
nsec/nsec3: avoid using extra changeset for fixing chain
2019-05-07 10:07:52 +02:00
Daniel Salzman
957201ea16
node: remove unused function node_set_parent
2019-04-26 15:18:00 +02:00
Daniel Salzman
e3094e3a86
Update license headers
2019-04-26 15:18:00 +02:00
Libor Peltan
bc7f4f82fb
semaphore: custom implementation to somehow work on OpenBSD and OSX
2019-04-26 15:18:00 +02:00
Libor Peltan
00b6db410a
apply: COW mutex -> semaphore, cause freed by RCU in other thread
2019-04-26 14:39:59 +02:00
Daniel Salzman
2de4e9937c
tests/node: fix double free
2019-04-26 14:39:59 +02:00
Libor Peltan
77845cc087
update: mutex avoid next update before cleanup by call_rcu
2019-04-26 14:39:59 +02:00
Libor Peltan
475a2e80e1
bi-nodes implemented, used for zone, updates, apply
2019-04-26 14:39:59 +02:00
Libor Peltan
7b9cc47f0e
node: function wrapper to obtaining prev, parent and glue nodes
2019-04-26 14:39:58 +02:00
Libor Peltan
6eb8875f30
zone tree: apply callback becomes node* instead of node**
2019-04-26 14:39:58 +02:00
Libor Peltan
25b571de7b
zone-in-journal: serialize zone contents directly
2019-04-26 14:39:58 +02:00
Daniel Salzman
6c5ecae801
kaspdb: remove unused kasp_db_list_zones
2019-04-24 21:57:30 +02:00
Daniel Salzman
0eb7d6db64
mod-rrl: simplify endian-independent adrress operations
2019-04-02 18:40:14 +02:00
Mark Karpilovskij
defdfc2bee
mod-rrl: refactor hopscotch hashing to be readable
2019-04-02 18:40:14 +02:00
Mark Karpilovskij
bffa4eb4db
mod-rrl: remove unnecessary qname length from hash
2019-04-02 18:40:11 +02:00
Mark Karpilovskij
a8b22f15ad
tests/rrl: check endian-independent hash input
2019-04-02 18:39:56 +02:00
Daniel Salzman
54a151ecfd
Makefiles: add missing lmdb_CFLAGS
...
relates #638
2019-03-07 10:57:34 +01:00
Daniel Salzman
e2fa93faa7
tests/qp-cow: mute 'unused variable' if NDEBUG
2019-02-27 13:49:52 +01:00
Daniel Salzman
f0a889bf29
tests/kasp_db: take important code out of assertion
2019-02-27 13:40:57 +01:00
Daniel Salzman
cbba40b745
tests: mute warning on OpenBSD
2019-02-22 15:38:01 +01:00
Daniel Salzman
c2aa0d8339
tests: get rid of strcpy
2019-02-22 11:16:08 +01:00
Daniel Salzman
68b01318a9
libzscanner: add support for OPENPGPKEY, CSYNC, SMIMEA, and ZONEMD rrtypes
2019-02-21 16:42:02 +01:00
Daniel Salzman
49058e2295
semchecks: fix in apex glue check, extend and unify tests
2019-02-20 21:09:37 +01:00
Daniel Salzman
f83685b822
tests/net: remove commented, broken, and unreliable test
2019-02-08 16:36:59 +01:00
Daniel Salzman
c3b3d54f13
Merge branch 'lmdb_refactor' into 'master'
...
Lmdb refactor
See merge request knot/knot-dns!962
2019-02-07 15:37:18 +00:00
Daniel Salzman
949f7c198d
Adapt to trie API change
2019-02-06 21:36:05 +01:00
Daniel Salzman
eed80ad6ff
net: rename net_send/recv net_base_send/recv to fix name conflicts
2019-02-01 16:47:10 +01:00
Libor Peltan
844209ef4f
timers: using new lmdb implementation, + code organization
2019-02-01 14:45:51 +01:00
Libor Peltan
f821295aab
kasp_db: use new LMDB interlayer + improvements
2019-02-01 14:45:51 +01:00
Libor Peltan
83688ddddb
server+zone: using new implementation of journal for everything
2019-02-01 14:45:51 +01:00
Libor Peltan
0acc6a7149
journal: add new implementation of LMDB layer and Journal
2019-02-01 14:45:51 +01:00
Mark Karpilovskij
ccc470ec47
zone: DNAME semantic check according to RFC 6672
2019-01-30 13:57:02 +01:00
Daniel Salzman
62f4d7df7f
libdnssec: export pem API
2019-01-24 16:58:57 +01:00
Daniel Salzman
ff0cdb7ffe
libdnssec: dissolve libshared in libdnssec to fix linking issues with Clang
2019-01-24 16:55:22 +01:00
Daniel Salzman
73c1eee0e4
tests: fix some memory leaks in test_keystore_pkcs8
2019-01-21 20:40:57 +01:00
Daniel Salzman
ba25f38e91
tests: remove libdnssec/test_list.c
2019-01-21 20:23:52 +01:00
Mark Karpilovskij
6d1d86eb89
libdnssec: relax the fixed length condition for key ID
2019-01-21 14:30:17 +01:00
Daniel Salzman
3d1e98edb1
tests: improve temporary directory cleanup
2019-01-21 12:35:24 +01:00
Daniel Salzman
73ccd974a6
libdnssec: unify keystore function names
2019-01-21 11:46:40 +01:00
Daniel Salzman
e186e6cf59
libdnssec: remove unused keystore listing
2019-01-21 10:49:34 +01:00
Daniel Salzman
3171f32fa8
libdnssec: remove PKCS #8 keystore abstraction
2019-01-21 10:49:34 +01:00
Daniel Salzman
eb5af5aeb6
semchecks: adapt to multiple CDS/CDNSKEY feature
2019-01-17 14:23:23 +01:00
Daniel Salzman
25dcdd7485
Revert "add GOST algorithm support"
...
Nowadays the DNS comunity is not interested in GOST. Also this change is not
compatible (see https://gitlab.com/gnutls/gnutls/merge_requests/755 ).
This reverts commit da5615556c .
2019-01-07 14:00:41 +01:00
Mark Karpilovskij
be4fe5c38d
tests: extend the ACL unit test with new features
2018-12-19 20:46:45 +01:00
Mark Karpilovskij
99887bc04c
acl: implemented update owner and type granularity
2018-12-19 19:08:18 +01:00
Daniel Salzman
eecdcb55d8
time: add UTC time zone to ISO 8601
2018-12-18 12:00:54 +01:00
Libor Peltan
9ec432e988
Adjust refactor
2018-12-04 14:20:29 +00:00
Daniel Salzman
429511220d
Merge branch 'journal_drop_irrelavant' into 'master'
...
journal: drop when any axfr-like change to zone
See merge request knot/knot-dns!957
2018-12-04 10:08:03 +00:00
Libor Peltan
0e8b3c40ce
journal: drop when any axfr-like change to zone
2018-12-04 10:31:31 +01:00
Daniel Salzman
2d9d9f9092
Add -Wshadow to default CFLAGS + adapt code
2018-12-03 16:18:58 +01:00
Daniel Salzman
073e75812c
zscanner: add comment callback processing support
2018-11-06 11:12:08 +01:00
Daniel Salzman
0afdb24c45
requestor: code cleanup
2018-10-26 16:12:39 +02:00
Daniel Salzman
de7d217d31
knotd: add configurable answer rrset rotation determined by a query ID
...
close #612
2018-10-07 21:25:52 +02:00
Daniel Salzman
1c4c59083b
yparser: add support for backslashed characters in item value
...
Backslash character before quotation character is removed during parsing.
This feature is useful for the GeoIP module.
2018-10-03 22:59:30 +02:00
Daniel Salzman
37193f831b
Makefile: move _LIBS from _LDFLAGS to _LIBADD + cleanup
2018-09-07 10:20:52 +02:00
Vladimír Čunát
da5615556c
add GOST algorithm support
...
The other `#ifdef HAVE_*` were moved in switches,
so that they don't rely on being the last before `default:`
The tests needed fixing up cases of using GOST as invalid values.
2018-08-30 15:04:36 +02:00
Mark Karpilovskij
43d02901bb
libdnssec: hardcode key sizes for curve algorithms
...
closes #602
2018-08-30 11:19:16 +02:00
Daniel Kahn Gillmor
846bb431d2
use https://www.gnu.org instead of http://www.gnu.org
...
www.gnu.org has offered https for years now.
2018-08-29 09:45:57 -04:00
Tony Finch
1bc0971122
trie: support for copy-on-write transactions
...
A COW transaction allows a trie to be used for reading concurrently
while a modified version of the trie is being prepared. The change
can be committed by swapping the new trie root in place of the old one.
Internally, this feature uses one bit reference counts to identify which
parts of the trie are shared between the old and new versions, which
parts are new-only (so can be mutated) and which parts are old-only
(and will be free()d after commit).
2018-08-20 14:48:35 +02:00
Tony Finch
e7b7e187a3
trie: refactor to prepare for copy-on-write support
...
No functional change.
The point of this commit is to make it possible to stash a few
flags in leaf nodes as well as branch nodes, though we don't
yet exercise this possibility in any meaningful way.
This fixes a foolish mistake in the original qp trie data structure
declarations: the combination of unions and bitfields is a complete
disaster for portability, and it gets into dangerous territory wrt
compiler optimization. Instead, we just use a big enough word (uint64_t)
which is broken up into fields using accessor macros and inline functions,
and cast it to a pointer when necessary. We don't actually care about
the detailed layout in memory, just the numeric value, so a union was
the wrong tool.
2018-08-20 14:48:35 +02:00
Mark Karpilovskij
ca2f2ea047
tests/libdnssec: Rewrite NSEC bitmap test and make it extensible.
2018-08-18 15:12:56 +02:00
Vladimír Čunát
0de77d6277
test_dname: test knot_dname_in_bailiwick()
...
... instead of knot_dname_is_sub()
2018-08-01 20:55:27 +02:00
Daniel Salzman
5ae344a5c1
libknot/pkt: make knot_pkt_parse_question public (for Knot Resolver)
2018-07-20 10:44:39 +02:00
Daniel Salzman
7fb699e109
tests: fix warnings if NDEBUG
2018-07-12 14:04:58 +02:00
Daniel Salzman
8ebd8667d2
Adapt to new rrtype and rdataset API
2018-07-11 21:24:43 +02:00
Daniel Salzman
6d2a6fed19
libknot/rdataset: remove redundant function knot_rdataset_sort_at (rdataset is already sorted)
2018-07-11 21:21:52 +02:00
Daniel Salzman
94ae366b28
libknot/rdataset: rename structure items
2018-07-04 21:02:58 +02:00
Daniel Salzman
fedacab111
tests: fix omitted NSEC3 chain in some semantic tests
2018-06-12 16:19:08 +02:00
Daniel Salzman
136f065332
yparser: add support for dname key value
2018-06-12 13:43:06 +02:00
Daniel Salzman
625ed8d558
rrset-wire: replace knot_dname_parse with simplified implementation
2018-06-11 10:31:44 +02:00
Daniel Salzman
dd54723b14
pkt: make private parsing functions static
2018-06-11 10:12:11 +02:00
Daniel Salzman
c6f4b2941a
rrset-wire: header cleanup
2018-06-06 12:21:33 +02:00
Daniel Salzman
ffc9b4eac7
conf: remove useless mm_ctx
2018-06-05 16:23:24 +02:00
Daniel Salzman
6ac2bad0a7
Merge branch 'ecs_support' into 'master'
...
knot: add support for ECS EDNS option
See merge request knot/knot-dns!904
2018-05-22 10:16:19 +02:00