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 DSYNC rdatatype support #1185

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

peterthomassen
Copy link
Contributor

@peterthomassen peterthomassen commented Mar 15, 2025

The RRtype is described here: https://datatracker.ietf.org/doc/draft-ietf-dnsop-generalized-notify/

As the draft has passed WG Last Call and IETF Last Call, and IESG evaluation, no more changes are expected before this becomes an RFC (number not yet known).

@peterthomassen
Copy link
Contributor Author

According to the spec, compression in the target field is disallowed. _to_wire() just passes compress through from the caller. Do we need to explicitly turn it off?

Note: It's done here as for SVCB, for example, where the spec also does not allow it. I'm not sure if any callers using compress are actually expected.

@rthalley
Copy link
Owner

You should pass None as the compress parameter of the to_wire() method. I'm confused by your comment about SVCB though, as it does not pass the compress parameter through, but passes None as it should.

@peterthomassen
Copy link
Contributor Author

I'm confused by your comment about SVCB though

Me too, I misread its code! ;-) Pushed a fix.

@rthalley
Copy link
Owner

I did a first review pass, and noticed some issues with the "scheme" handling. The draft says that if the scheme has a mnemonic assigned you use it, otherwise you use an unsigned decimal integer. The code in this PR will fail in from_text() if an unsigned decimal integer is given, and fail in to_text() if the rdata's scheme is not known. When fixing this, the from_text() code needs to do the right logic for integer conversion from masterfile, as show in the tokenizer's get_int() method. We could either extract this code to a utility library, or you could unget() the token and call get_int().

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