DNS protocol constants (TYPE, CLASS, RCODE, OPCODE) with forward and reverse
lookup tables, and an RDATA codec registry. Each codec provides decode and
encode functions for a specific DNS record type, operating on dns.wire
readers and writers.
| Name | Signature |
|---|---|
| register_codec | register_codec(type_code, codec) |
| get_codec | get_codec(type_code) -> codec |
| format_ipv6 | format_ipv6(groups) -> address |
| parse_ipv6 | parse_ipv6(address) -> groups, err |
register_codec(
type_code,codec)
Register an RDATA codec for a given type code
get_codec(
type_code) ->codec
Look up the RDATA codec for a given type code
format_ipv6(
groups) ->address
Format 8 u16 groups into RFC5952 canonical IPv6 string
Formats an array of 8 16-bit groups into RFC5952 canonical form:
:::: only used for runs of 2 or more zero groupsparse_ipv6(
address) ->groups,err
Parse an IPv6 address string into 8 u16 groups
Parses an IPv6 address with :: expansion. Returns an array of 8 u16
values, or nil and an error message.