[PR #1537] [MERGED] use ResponseCode in Header rather than u8 #2397

Closed
opened 2026-03-16 08:51:39 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/hickory-dns/hickory-dns/pull/1537
Author: @bluejekyll
Created: 8/16/2021
Status: Merged
Merged: 8/18/2021
Merged by: @bluejekyll

Base: mainHead: use-response-code-in-header


📝 Commits (2)

  • 238aacc use ResponseCode in Header rather than u8
  • 03fbfe9 add more documentation around merge_response_code and mark hidden

📊 Changes

4 files changed (+59 additions, -20 deletions)

View changed files

📝 crates/proto/src/op/header.rs (+18 -7)
📝 crates/proto/src/op/message.rs (+19 -8)
📝 crates/proto/src/op/response_code.rs (+14 -0)
📝 crates/server/src/authority/message_request.rs (+8 -5)

📄 Description

I noticed in reviewing logs of the server that the ResponseCode was always being reported as a simple number, rather than using the name associated with the enum value. While researching the change, it became clear that this is partially because we do not store the ResponseCode in the Header, but instead only the low order 4 bits. The high-order bits are associated with the EDNS record, which have always been split.

This change fixes the logging issue and also stores the full ResponseCode in the Header of the Message, rather than only the partial value.


🔄 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/1537 **Author:** [@bluejekyll](https://github.com/bluejekyll) **Created:** 8/16/2021 **Status:** ✅ Merged **Merged:** 8/18/2021 **Merged by:** [@bluejekyll](https://github.com/bluejekyll) **Base:** `main` ← **Head:** `use-response-code-in-header` --- ### 📝 Commits (2) - [`238aacc`](https://github.com/hickory-dns/hickory-dns/commit/238aaccf45deccd36004ba6175ef503a8a9e0928) use ResponseCode in Header rather than u8 - [`03fbfe9`](https://github.com/hickory-dns/hickory-dns/commit/03fbfe96dc107f634abf317b495a703d27873e41) add more documentation around merge_response_code and mark hidden ### 📊 Changes **4 files changed** (+59 additions, -20 deletions) <details> <summary>View changed files</summary> 📝 `crates/proto/src/op/header.rs` (+18 -7) 📝 `crates/proto/src/op/message.rs` (+19 -8) 📝 `crates/proto/src/op/response_code.rs` (+14 -0) 📝 `crates/server/src/authority/message_request.rs` (+8 -5) </details> ### 📄 Description I noticed in reviewing logs of the server that the ResponseCode was always being reported as a simple number, rather than using the name associated with the enum value. While researching the change, it became clear that this is partially because we do not store the ResponseCode in the Header, but instead only the low order 4 bits. The high-order bits are associated with the EDNS record, which have always been split. This change fixes the logging issue and also stores the full ResponseCode in the Header of the Message, rather than only the partial value. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-03-16 08:51:39 +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#2397
No description provided.