Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add XFR middleware. #384

Merged
merged 461 commits into from
Oct 2, 2024
Merged

Add XFR middleware. #384

merged 461 commits into from
Oct 2, 2024

Conversation

ximon18
Copy link
Member

@ximon18 ximon18 commented Sep 5, 2024

Extraction of XfrMiddlewareSvc from the xfr branch and conversion such that access control checks are no longer hard-coded into the middleware nor dependent on policy data being stored in a specific form, and renames ZoneDiff to InMemoryZoneDiff and adds a ZoneDiff trait to remove the fixed use of in-memory diffs by XfrMiddlewareSvc.

Notes about the changes to src/zonetree/in_memory/read.rs:

Changes in read.rs are just cleaning up:

  • In query_node_here_and_below() it now only invokes the walker if actually enabled, though nothing was actually broken by not checking for this (as when not enabled it does nothing), this change just makes the code more consistent with other code in read.rs.
  • In query_node_here_but_not_below() calls to the walker have been removed, but only because they never get invoked anyway, as the only caller of this fn only calls if it not walking.
  • Some fixes/tweaks to code comments.

@ximon18 ximon18 requested a review from a team September 5, 2024 21:37
@ximon18 ximon18 marked this pull request as ready for review September 10, 2024 09:20
ximon18 and others added 28 commits September 11, 2024 00:05
- Renamed AuthenticatedRequestMessage to RequestMessage to be consitent with src::net::client::request and to shorten the name (as it is scoped by the module so is still unique).
- Renamed UpstreamSender to Forwarder as it's shorter and (I thnk) better.
- Replaced HandleResponseResult by Option.
- Renamed handle_response() to validate_response() and simplified the option/error handling a little.
- Moved some impls around in the file to be nearer the type they affect.
…ion of tsig mod KeyStore changes which is good anyway as they would have been breaking changes to stable interfaces.
@ximon18 ximon18 merged commit 01fccdf into main Oct 2, 2024
26 checks passed
ximon18 added a commit that referenced this pull request Oct 3, 2024
Add XFR middleware and:
- Fixes a bug where the incorrect owner name was passed to the zone walker callback.
- New `ixfr-client.rs` example.
- Updated `serve-zone.rs` example demonstrating TSIG authenticated XFR and NOTIFY middlewares.
- Additional From impls for CallResult.
- Renames ZoneDiff to InMemoryZoneDiff.
- Renames ZoneDiffBuilder to InMemoryZoneDiffBuilder.
- Introduces new ZoneDiff and related traits.
- Adds AnswerContent::first().
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants