Commit Graph

42 Commits

Author SHA1 Message Date
Jorge Aparicio
ab9b1e68cc also take Impl by ref in Resolver::new
mainly for symmetry. the existing tests don't clone the subject so the
code does not become any shorter
2024-02-26 14:48:48 +01:00
Jorge Aparicio
49b2abc6be take Impl by ref in NameServer::new
this eliminates the need for cloning in tests that use more than one
name server, making the code more succint / less noisy
2024-02-26 14:48:48 +01:00
Jorge Aparicio
6fda01af00 parse authority section from dig's output 2024-02-26 14:40:33 +01:00
Андрей Листочкин (Andrei Listochkin)
eda8fd6ec3
Merge branch 'main' into ja-explicit-license 2024-02-26 13:13:45 +00:00
Jorge Aparicio
5f26698a51 make license more visible
it was already in the Cargo.toml metadata but add the files and mention
it in the README
2024-02-26 12:28:42 +01:00
Jorge Aparicio
a39afe6412 test a bogus DNSSEC scenario 2024-02-26 11:50:48 +01:00
Jorge Aparicio
b87ae21d2a make dig queries more configurable
switch from enum arguments like `Recurse` and `Dnssec` to a
build-pattern-based `Settings` struct
2024-02-26 11:50:48 +01:00
Jorge Aparicio
df344e57b1 fix integer types in RRSIG 2024-02-26 11:50:48 +01:00
Jorge Aparicio
16e83b1d6b move secure DNSSEC scenarios into a module 2024-02-26 11:50:48 +01:00
Jorge Aparicio
1592454395 allow mutation of signed zone file 2024-02-26 11:50:48 +01:00
Jorge Aparicio
57a1fc9231 parse more record types 2024-02-26 11:50:48 +01:00
Jorge Aparicio
66d6061ffc drop most zone_file entry types
instead use the record types in zone files

the main difference between e.g. zone_file::A and record::A was that the
latter had a TTL filed and the former didn't

to eliminate code duplication we make the `ZoneFile` API use the
`record` types and discard the zone_file entry types
2024-02-26 11:50:43 +01:00
Jorge Aparicio
a83b6629a3 drop generic lifetime parameters from types
none of the parsing we are doing requires a non-static lifetime
2024-02-26 11:43:25 +01:00
Jorge Aparicio
56a9613615 fix the explore example 2024-02-23 15:35:51 +01:00
Андрей Листочкин (Andrei Listochkin)
9f03274589
Merge pull request #19 from japaric/ja-dns-test-peer
add `dns_test::peer` and use it to initialize `NameServer`
2024-02-23 13:59:25 +00:00
Jorge Aparicio
98cb9ddaae add a Client image 2024-02-23 13:21:07 +01:00
Jorge Aparicio
c0b681e0a3 add an Implementation parameter to NameServer::new
use `dns_test::peer` for name servers in conformance tests
2024-02-23 12:48:34 +01:00
Jorge Aparicio
59dc60c5c4 enable verbose docker build with any value of DNS_TEST_VERBOSE_DOCKER_BUILD 2024-02-20 16:36:52 +01:00
Jorge Aparicio
86284cce4b add explore example 2024-02-20 16:30:41 +01:00
Jorge Aparicio
709a8406b1 document what ./src refers to in hickory.Dockerfile 2024-02-20 10:28:13 +01:00
Jorge Aparicio
1cb7ee40fe perform some validation of the repository argument 2024-02-20 10:28:11 +01:00
Jorge Aparicio
0afae4f042 don't include the .git directory in the context send to docker build
without this `DNS_TEST_SUBJECT="hickory $URL" cargo t` was re-building
hickory from scratch even when its source had not change

not including the `.git` directory in the hickory repository lets Docker
see that the source code has not changed
2024-02-20 10:26:33 +01:00
Jorge Aparicio
55184172e3 build hickory from a local/remote git source
DNS_TEST_SUBJECT now needs to contain the URL to the hickory source code
2024-02-20 10:26:33 +01:00
Jorge Aparicio
0e2b35699c add mechanism to make docker build visible
set the DNS_TEST_VERBOSE_DOCKER_BUILD env var to 1 to make the `docker
build` command print its output to the console
2024-02-20 10:26:33 +01:00
Jorge Aparicio
156e005ff2 RFC4035: test EDNS support 2024-02-19 13:22:15 +01:00
Jorge Aparicio
438af31340 Tshark: newtype the json::Value & add some getters 2024-02-19 12:56:40 +01:00
Jorge Aparicio
e77fd41635 add eavesdrop API
closes #9
2024-02-19 12:56:38 +01:00
Sebastian Ziebell
014662d218
Refactor tests to check network state 2024-02-16 14:38:30 +01:00
Sebastian Ziebell
a4ca3d6423
Incorporate feedback
* add new type `Network` that holds `Arc`
* adjust network name to use `CARGO_PKG_NAME` env var, process id and
  counter
* remove function to remove network
* clone Network in container
* refactor Network tests
2024-02-16 14:38:30 +01:00
Sebastian Ziebell
2289567998
Disconnect all containers before removing network
The list of attached containers is determined, all of them are
disconnected from the network, then the network is deleted.

* set net mask in unbound conf template
* expose container id
2024-02-16 14:38:30 +01:00
Sebastian Ziebell
820f1c3447
Pass in Network to containers 2024-02-16 14:38:28 +01:00
Sebastian Ziebell
5630dd79e9
Add Network types
Creates & removes the Docker network & reads in the allocated subnet mask.
2024-02-16 14:36:42 +01:00
Jorge Aparicio
36f93252a2 resolver: check that the root servers list is not empty 2024-02-12 19:11:59 +01:00
Jorge Aparicio
952c346e9e build hickory in debug mode 2024-02-09 16:42:52 +01:00
Jorge Aparicio
d17e42a679 update CI to run tests against unbound & hickory 2024-02-09 16:37:53 +01:00
Jorge Aparicio
e52980a82f test NXDOMAIN scenario 2024-02-09 16:35:29 +01:00
Jorge Aparicio
9526338ca7 shorten RecursiveResolver -> Resolver 2024-02-09 16:03:09 +01:00
Jorge Aparicio
04a7190e61 supporty hickory-based Resolver 2024-02-09 15:37:58 +01:00
Jorge Aparicio
3c95b85150 introduce Implementation enum 2024-02-09 14:55:03 +01:00
Jorge Aparicio
5c53ba0899 make Client::delv work & use it in dnssec tests 2024-02-08 19:23:50 +01:00
Jorge Aparicio
edd6eebe1a mv tests into conformance-tests package 2024-02-08 18:28:05 +01:00
Jorge Aparicio
1c2d9ec4dc restructure into a workspace 2024-02-08 18:15:41 +01:00