erldns_dnssec (erldns v7.0.0-rc12)

View Source

DNSSEC implementation.

Summary

Functions

Get signed records from a zone

Get signed records from a zone

Apply DNSSEC records to the given message if the zone is signed and DNSSEC is requested.

This function will potentially sign the given RR set if the following conditions are true

Given a zone and a set of records, return the RRSIG records.

Functions

get_signed_records/1

-spec get_signed_records(erldns:zone()) -> #{atom() => [dns:rr()]}.

Get signed records from a zone

get_signed_zone_records/1

-spec get_signed_zone_records(erldns:zone()) -> [dns:rr()].

Get signed records from a zone

handle(Message, Zone, Qname, QType)

-spec handle(dns:message(), erldns:zone(), dns:dname(), dns:type()) -> dns:message().

Apply DNSSEC records to the given message if the zone is signed and DNSSEC is requested.

map_nsec_rr_types(Types)

-spec map_nsec_rr_types([dns:type()]) -> [dns:type()].

map_nsec_rr_types(QType, Types)

-spec map_nsec_rr_types(dns:type(), [dns:type()]) -> [dns:type()].

maybe_sign_rrset(Message, Records, Zone)

-spec maybe_sign_rrset(dns:message(), [dns:rr()], erldns:zone()) -> [dns:rr()].

This function will potentially sign the given RR set if the following conditions are true:

  • DNSSEC is requested
  • The zone is signed

rrsig_for_zone_rrset(Zone, RRs)

-spec rrsig_for_zone_rrset(erldns:zone(), [dns:rr()]) -> [dns:rr()].

Given a zone and a set of records, return the RRSIG records.