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

Refactor xfr. #1122

Merged
merged 3 commits into from
Aug 18, 2024
Merged

Refactor xfr. #1122

merged 3 commits into from
Aug 18, 2024

Conversation

bwelling
Copy link
Collaborator

Internally refactors the zone transfer code to separate the message processing from the socket management, allowing the (internal) callers to pass a socket in. This should allow a future interface that accepts a socket, which would mean that xfr over DoT would just work, and xfr over DoQ would be closer to working.

Adds some necessary functionality to the asyncbackend Socket class to allow the async zone transfer code to be more similar to the sync code (specifically, adds a type field to Socket, and updates the trio backend to connect UDP sockets when requested).

In asyncquery.py, reorder the inbound_xfr() and quic() methods for consistency.

Internally refactors the zone transfer code to separate the message
processing from the socket management, allowing the (internal) callers
to pass a socket in.  This should allow a future interface that accepts
a socket, which would mean that xfr over DoT would just work, and xfr
over DoQ would be closer to working.

Adds some necessary functionality to the asyncbackend Socket class to
allow the async zone transfer code to be more similar to the sync code
(specifically, adds a type field to Socket, and updates the trio backend
to connect UDP sockets when requested).

In asyncquery.py, reorder the inbound_xfr() and quic() methods for
consistency.
@rthalley rthalley merged commit e03819b into rthalley:main Aug 18, 2024
9 checks passed
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