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

Support CAA record type #20

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open

Conversation

mdelaossa
Copy link

@mdelaossa mdelaossa commented Sep 20, 2017

Adds CAA record support to DNSD. This will help with CA validation.

The record seems to be an 8-bit flag, then an 8-bit length of the type, followed by the payload (type and value).

Values generated by this have been validated by using https://sslmate.com/caa/ and dig 9.9.7-P3

Usage:

To get 0 issuewild "digicert.com" to show up on your DNS records, you should use:

res.answer.push({name: question.name, type: 'CAA', data: { type: 'issuewild', value: 'digicert.com' }, 'ttl': ttl});

Fixes #19

mdelaossa and others added 5 commits September 20, 2017 14:59
The 65 HTTPS record in particular is now frequently requested by Chrome
and without this mapping defined an error is thrown.
If an error is thrown while creating a Request object, such as when an
unknown resource record type is requested, there's no way for the client
to handle it. The error is thrown before the request is emitted and the
handler is called. This change leaves the underlying error throwing as
it is but catches the error in the server and emits them instead.
Any errors that might be emitted from the socket rather than the server
can't be handled by the client. This listens for errors on the connection
(and request and response) and emits them from the server.

In order to do that, the Request and Response objects (which inherit from
DNSMessage) must actually be EventEmitters. They often call emit, but only
in rare code paths. Those code paths would throw because emit wasn't a function.
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