[PR #2605] [CLOSED] DNSSEC: use trait objects for public keys #3174

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

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/2605
Author: @djc
Created: 11/22/2024
Status: Closed

Base: mainHead: dnssec-public-key


📝 Commits (10+)

  • 3afb676 proto: use single timeout value across protocols
  • 11e7253 proto: make PublicKeyEnum 'static
  • 6d2d9cd proto: store PublicKey objects in DNSKEY/KEY types
  • 7d9ae1c proto: drop PublicKeyEnum type
  • 5306d57 proto: centralize PublicKey trait bounds
  • aee1c8d proto: externalize Arc-wrapping of public keys
  • 9e51248 proto: use real public keys in tests
  • 2a5b512 proto: simplify combinator-heavy OpenSSL code
  • 46185fc tests: regenerate ECDSA key from the wrong curve
  • 141aff6 proto: decode directly to PublicKey

📊 Changes

36 files changed (+667 additions, -419 deletions)

View changed files

📝 bin/tests/integration/authority_battery/dynamic_update.rs (+1 -0)
📝 bin/tests/integration/named_test_rsa_dnssec.rs (+1 -1)
📝 conformance/packages/conformance-tests/src/resolver/dnssec/scenarios/insecure/deprecated_algorithm.rs (+4 -1)
📝 conformance/packages/dns-test/src/docker/hickory.Dockerfile (+1 -0)
📝 conformance/packages/dns-test/src/resolver.rs (+5 -1)
📝 crates/proto/src/dnssec/ec_public_key.rs (+5 -2)
📝 crates/proto/src/dnssec/mod.rs (+5 -3)
📝 crates/proto/src/dnssec/openssl.rs (+86 -47)
📝 crates/proto/src/dnssec/public_key.rs (+62 -152)
📝 crates/proto/src/dnssec/rdata/cdnskey.rs (+1 -1)
📝 crates/proto/src/dnssec/rdata/dnskey.rs (+124 -20)
📝 crates/proto/src/dnssec/rdata/ds.rs (+35 -11)
📝 crates/proto/src/dnssec/rdata/key.rs (+133 -19)
📝 crates/proto/src/dnssec/ring.rs (+39 -27)
📝 crates/proto/src/dnssec/rsa_public_key.rs (+11 -8)
📝 crates/proto/src/dnssec/signer.rs (+6 -10)
📝 crates/proto/src/dnssec/trust_anchor.rs (+2 -2)
📝 crates/proto/src/dnssec/verifier.rs (+6 -3)
📝 crates/proto/src/h2/h2_client_stream.rs (+3 -5)
📝 crates/proto/src/h3/h3_client_stream.rs (+12 -20)

...and 16 more files

📄 Description

No description provided


🔄 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/2605 **Author:** [@djc](https://github.com/djc) **Created:** 11/22/2024 **Status:** ❌ Closed **Base:** `main` ← **Head:** `dnssec-public-key` --- ### 📝 Commits (10+) - [`3afb676`](https://github.com/hickory-dns/hickory-dns/commit/3afb6762204a297d88658f8460e0c4addaff6096) proto: use single timeout value across protocols - [`11e7253`](https://github.com/hickory-dns/hickory-dns/commit/11e72531293c8915abdc6e4e3d47c331aaf38b0a) proto: make PublicKeyEnum 'static - [`6d2d9cd`](https://github.com/hickory-dns/hickory-dns/commit/6d2d9cdd5a20604237e092b697ba9a015c4952aa) proto: store PublicKey objects in DNSKEY/KEY types - [`7d9ae1c`](https://github.com/hickory-dns/hickory-dns/commit/7d9ae1ccac0f89db453a07ccb602f6f152943126) proto: drop PublicKeyEnum type - [`5306d57`](https://github.com/hickory-dns/hickory-dns/commit/5306d573b47334fbe6bb1694fbbded42d34b07a2) proto: centralize PublicKey trait bounds - [`aee1c8d`](https://github.com/hickory-dns/hickory-dns/commit/aee1c8de13978917c5c00629d75eab0321d3b845) proto: externalize Arc-wrapping of public keys - [`9e51248`](https://github.com/hickory-dns/hickory-dns/commit/9e5124899c551a5679e4ed172aaf142912503e94) proto: use real public keys in tests - [`2a5b512`](https://github.com/hickory-dns/hickory-dns/commit/2a5b512d1ea1ead0ba924ff9087b16d0e5336b0e) proto: simplify combinator-heavy OpenSSL code - [`46185fc`](https://github.com/hickory-dns/hickory-dns/commit/46185fccde1c40ad8c951b210535b4981d4852d2) tests: regenerate ECDSA key from the wrong curve - [`141aff6`](https://github.com/hickory-dns/hickory-dns/commit/141aff662c379cc6052cba4c1c1efd0890dd5a40) proto: decode directly to PublicKey ### 📊 Changes **36 files changed** (+667 additions, -419 deletions) <details> <summary>View changed files</summary> 📝 `bin/tests/integration/authority_battery/dynamic_update.rs` (+1 -0) 📝 `bin/tests/integration/named_test_rsa_dnssec.rs` (+1 -1) 📝 `conformance/packages/conformance-tests/src/resolver/dnssec/scenarios/insecure/deprecated_algorithm.rs` (+4 -1) 📝 `conformance/packages/dns-test/src/docker/hickory.Dockerfile` (+1 -0) 📝 `conformance/packages/dns-test/src/resolver.rs` (+5 -1) 📝 `crates/proto/src/dnssec/ec_public_key.rs` (+5 -2) 📝 `crates/proto/src/dnssec/mod.rs` (+5 -3) 📝 `crates/proto/src/dnssec/openssl.rs` (+86 -47) 📝 `crates/proto/src/dnssec/public_key.rs` (+62 -152) 📝 `crates/proto/src/dnssec/rdata/cdnskey.rs` (+1 -1) 📝 `crates/proto/src/dnssec/rdata/dnskey.rs` (+124 -20) 📝 `crates/proto/src/dnssec/rdata/ds.rs` (+35 -11) 📝 `crates/proto/src/dnssec/rdata/key.rs` (+133 -19) 📝 `crates/proto/src/dnssec/ring.rs` (+39 -27) 📝 `crates/proto/src/dnssec/rsa_public_key.rs` (+11 -8) 📝 `crates/proto/src/dnssec/signer.rs` (+6 -10) 📝 `crates/proto/src/dnssec/trust_anchor.rs` (+2 -2) 📝 `crates/proto/src/dnssec/verifier.rs` (+6 -3) 📝 `crates/proto/src/h2/h2_client_stream.rs` (+3 -5) 📝 `crates/proto/src/h3/h3_client_stream.rs` (+12 -20) _...and 16 more files_ </details> ### 📄 Description _No description provided_ --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 11:29:15 +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#3174
No description provided.