[PR #2621] [MERGED] Replace PublicKeyEnum with decode_public_key() function #3185

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

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/2621
Author: @djc
Created: 11/27/2024
Status: Merged
Merged: 11/28/2024
Merged by: @djc

Base: mainHead: public-key-code


📝 Commits (9)

  • 91a8dfe proto: use real public keys in tests
  • fd43adf tests: regenerate ECDSA key from the wrong curve
  • a09a015 proto: simplify combinator-heavy OpenSSL code
  • f1d4820 proto: commit public key to an algorithm
  • 3113c81 proto: replace PublicKeyEnum with decode_public_key() function
  • d35b865 proto: take reference to PublicKey where possible
  • 1c428be proto: move OpenSSL public key wrangling code into openssl module
  • 4e78eb1 proto: make public key decoding paths independent of backend
  • e17943d proto: use Cow to allow public key types to be 'static

📊 Changes

22 files changed (+372 additions, -284 deletions)

View changed files

📝 bin/src/dnssec.rs (+1 -1)
📝 bin/src/hickory-dns.rs (+1 -1)
📝 bin/tests/integration/authority_battery/dynamic_update.rs (+2 -2)
📝 crates/proto/src/dnssec/ec_public_key.rs (+6 -1)
📝 crates/proto/src/dnssec/mod.rs (+7 -7)
📝 crates/proto/src/dnssec/openssl.rs (+102 -56)
📝 crates/proto/src/dnssec/public_key.rs (+55 -127)
📝 crates/proto/src/dnssec/rdata/dnskey.rs (+14 -8)
📝 crates/proto/src/dnssec/rdata/ds.rs (+32 -10)
📝 crates/proto/src/dnssec/rdata/key.rs (+15 -8)
📝 crates/proto/src/dnssec/ring.rs (+39 -15)
📝 crates/proto/src/dnssec/signer.rs (+8 -13)
📝 crates/proto/src/dnssec/trust_anchor.rs (+2 -2)
📝 crates/proto/src/dnssec/verifier.rs (+6 -5)
📝 crates/proto/src/serialize/txt/rdata_parsers/dnskey.rs (+33 -5)
📝 crates/proto/src/serialize/txt/trust_anchor.rs (+35 -7)
📝 crates/server/src/store/in_memory/authority.rs (+1 -1)
📝 crates/server/src/store/recursor/config.rs (+3 -4)
📝 tests/integration-tests/src/example_authority.rs (+1 -1)
📝 tests/integration-tests/tests/integration/client_future_tests.rs (+1 -1)

...and 2 more files

📄 Description

Scaled back version of:


🔄 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/2621 **Author:** [@djc](https://github.com/djc) **Created:** 11/27/2024 **Status:** ✅ Merged **Merged:** 11/28/2024 **Merged by:** [@djc](https://github.com/djc) **Base:** `main` ← **Head:** `public-key-code` --- ### 📝 Commits (9) - [`91a8dfe`](https://github.com/hickory-dns/hickory-dns/commit/91a8dfe1683b974f65d908583e504517015d94cc) proto: use real public keys in tests - [`fd43adf`](https://github.com/hickory-dns/hickory-dns/commit/fd43adfc68d0940da80c7ff891e3c2a9a251b094) tests: regenerate ECDSA key from the wrong curve - [`a09a015`](https://github.com/hickory-dns/hickory-dns/commit/a09a0154172978ec8877d1ea253410c0a9a0f7f9) proto: simplify combinator-heavy OpenSSL code - [`f1d4820`](https://github.com/hickory-dns/hickory-dns/commit/f1d4820535240b786317ff8bda737c64a216dc16) proto: commit public key to an algorithm - [`3113c81`](https://github.com/hickory-dns/hickory-dns/commit/3113c81126b994777f19f6413f3f1ea67e40e3f4) proto: replace PublicKeyEnum with decode_public_key() function - [`d35b865`](https://github.com/hickory-dns/hickory-dns/commit/d35b865dd282c6b2f6dc23d06f850900a67f0ebf) proto: take reference to PublicKey where possible - [`1c428be`](https://github.com/hickory-dns/hickory-dns/commit/1c428be67b8fa7f10ee63ffd4addce042c67a37e) proto: move OpenSSL public key wrangling code into openssl module - [`4e78eb1`](https://github.com/hickory-dns/hickory-dns/commit/4e78eb1054b8e600ba464f6a07944cd7c6f461b4) proto: make public key decoding paths independent of backend - [`e17943d`](https://github.com/hickory-dns/hickory-dns/commit/e17943d0d6b97e5a63e00f4ae3357827521db7b3) proto: use Cow to allow public key types to be 'static ### 📊 Changes **22 files changed** (+372 additions, -284 deletions) <details> <summary>View changed files</summary> 📝 `bin/src/dnssec.rs` (+1 -1) 📝 `bin/src/hickory-dns.rs` (+1 -1) 📝 `bin/tests/integration/authority_battery/dynamic_update.rs` (+2 -2) 📝 `crates/proto/src/dnssec/ec_public_key.rs` (+6 -1) 📝 `crates/proto/src/dnssec/mod.rs` (+7 -7) 📝 `crates/proto/src/dnssec/openssl.rs` (+102 -56) 📝 `crates/proto/src/dnssec/public_key.rs` (+55 -127) 📝 `crates/proto/src/dnssec/rdata/dnskey.rs` (+14 -8) 📝 `crates/proto/src/dnssec/rdata/ds.rs` (+32 -10) 📝 `crates/proto/src/dnssec/rdata/key.rs` (+15 -8) 📝 `crates/proto/src/dnssec/ring.rs` (+39 -15) 📝 `crates/proto/src/dnssec/signer.rs` (+8 -13) 📝 `crates/proto/src/dnssec/trust_anchor.rs` (+2 -2) 📝 `crates/proto/src/dnssec/verifier.rs` (+6 -5) 📝 `crates/proto/src/serialize/txt/rdata_parsers/dnskey.rs` (+33 -5) 📝 `crates/proto/src/serialize/txt/trust_anchor.rs` (+35 -7) 📝 `crates/server/src/store/in_memory/authority.rs` (+1 -1) 📝 `crates/server/src/store/recursor/config.rs` (+3 -4) 📝 `tests/integration-tests/src/example_authority.rs` (+1 -1) 📝 `tests/integration-tests/tests/integration/client_future_tests.rs` (+1 -1) _...and 2 more files_ </details> ### 📄 Description Scaled back version of: - #2605 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 11:30:04 +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#3185
No description provided.