[PR #2593] [CLOSED] Conformance: test Hickory DNS with ring as well #3169

Closed
opened 2026-03-16 11:28:59 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/2593
Author: @divergentdave
Created: 11/19/2024
Status: Closed

Base: ring-rsaHead: david/conformance-cargo-features


📝 Commits (7)

  • a60c1ae proto: split key_format module
  • be11d97 proto: explicitly pick a signing backend in DNSSEC code
  • f4613e0 proto: add support for ring-based RSA signing keys
  • f2daf76 Conformance: Configurable Hickory DNS features
  • 4b3cfc5 Show nameserver logs on failure of NSEC3 tests
  • c29b46b Switch between PEM and PKCS8 keys for nameserver
  • dfbe1c4 Update justfile to invoke conformance-hickory-ring

📊 Changes

16 files changed (+301 additions, -135 deletions)

View changed files

📝 conformance/packages/conformance-tests/src/name_server/rfc5155.rs (+6 -2)
📝 conformance/packages/dns-test/src/container.rs (+35 -12)
📝 conformance/packages/dns-test/src/docker/hickory.Dockerfile (+3 -1)
📝 conformance/packages/dns-test/src/implementation.rs (+52 -11)
📝 conformance/packages/dns-test/src/lib.rs (+12 -5)
📝 conformance/packages/dns-test/src/name_server.rs (+24 -1)
📝 conformance/packages/dns-test/src/templates/hickory.name-server.toml.jinja (+4 -0)
crates/proto/src/dnssec/key_format.rs (+0 -79)
📝 crates/proto/src/dnssec/mod.rs (+27 -16)
📝 crates/proto/src/dnssec/openssl.rs (+40 -0)
📝 crates/proto/src/dnssec/public_key.rs (+2 -2)
📝 crates/proto/src/dnssec/ring.rs (+84 -2)
📝 crates/proto/src/dnssec/signer.rs (+3 -2)
crates/proto/tests/test-data/rsa-2048-private-key-1.pk8 (+0 -0)
crates/proto/tests/test-data/rsa-2048-private-key-2.pk8 (+0 -0)
📝 justfile (+9 -2)

📄 Description

This is stacked on top of #2589 for now.

This PR adds another optional parameter to the DNS_TEST_SUBJECT environment variable, to allow choosing between the dnssec-openssl and dnssec-ring Cargo features. I also added support for providing either a PEM or PKCS8 private key to a Hickory name server, depending on which library it is using. This flexibility will also be useful in the near future when we add aws-lc-rs.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/hickory-dns/hickory-dns/pull/2593 **Author:** [@divergentdave](https://github.com/divergentdave) **Created:** 11/19/2024 **Status:** ❌ Closed **Base:** `ring-rsa` ← **Head:** `david/conformance-cargo-features` --- ### 📝 Commits (7) - [`a60c1ae`](https://github.com/hickory-dns/hickory-dns/commit/a60c1ae52a9621f09e8b07c38ed6328eb3024759) proto: split key_format module - [`be11d97`](https://github.com/hickory-dns/hickory-dns/commit/be11d97b8db0cbf8df738d8033317caf6ceb5bcb) proto: explicitly pick a signing backend in DNSSEC code - [`f4613e0`](https://github.com/hickory-dns/hickory-dns/commit/f4613e0aa5ba7c533be306ec1d555973c01a6b85) proto: add support for ring-based RSA signing keys - [`f2daf76`](https://github.com/hickory-dns/hickory-dns/commit/f2daf76a604e8a4db6c59ed6d18286e2ab3b266f) Conformance: Configurable Hickory DNS features - [`4b3cfc5`](https://github.com/hickory-dns/hickory-dns/commit/4b3cfc54822f63a4c279d510c3cbce172e31bbf6) Show nameserver logs on failure of NSEC3 tests - [`c29b46b`](https://github.com/hickory-dns/hickory-dns/commit/c29b46b24a8ce14e55020745a54b54a11a45e69d) Switch between PEM and PKCS8 keys for nameserver - [`dfbe1c4`](https://github.com/hickory-dns/hickory-dns/commit/dfbe1c4d94b0d3694ca7e2718f4eee8710199282) Update justfile to invoke conformance-hickory-ring ### 📊 Changes **16 files changed** (+301 additions, -135 deletions) <details> <summary>View changed files</summary> 📝 `conformance/packages/conformance-tests/src/name_server/rfc5155.rs` (+6 -2) 📝 `conformance/packages/dns-test/src/container.rs` (+35 -12) 📝 `conformance/packages/dns-test/src/docker/hickory.Dockerfile` (+3 -1) 📝 `conformance/packages/dns-test/src/implementation.rs` (+52 -11) 📝 `conformance/packages/dns-test/src/lib.rs` (+12 -5) 📝 `conformance/packages/dns-test/src/name_server.rs` (+24 -1) 📝 `conformance/packages/dns-test/src/templates/hickory.name-server.toml.jinja` (+4 -0) ➖ `crates/proto/src/dnssec/key_format.rs` (+0 -79) 📝 `crates/proto/src/dnssec/mod.rs` (+27 -16) 📝 `crates/proto/src/dnssec/openssl.rs` (+40 -0) 📝 `crates/proto/src/dnssec/public_key.rs` (+2 -2) 📝 `crates/proto/src/dnssec/ring.rs` (+84 -2) 📝 `crates/proto/src/dnssec/signer.rs` (+3 -2) ➕ `crates/proto/tests/test-data/rsa-2048-private-key-1.pk8` (+0 -0) ➕ `crates/proto/tests/test-data/rsa-2048-private-key-2.pk8` (+0 -0) 📝 `justfile` (+9 -2) </details> ### 📄 Description This is stacked on top of #2589 for now. This PR adds another optional parameter to the DNS_TEST_SUBJECT environment variable, to allow choosing between the `dnssec-openssl` and `dnssec-ring` Cargo features. I also added support for providing either a PEM or PKCS8 private key to a Hickory name server, depending on which library it is using. This flexibility will also be useful in the near future when we add aws-lc-rs. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 11:28:59 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/hickory-dns#3169
No description provided.