dns.types — Lilush API

←index

← dns

Overview

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.

Functions

NameSignature
register_codecregister_codec(type_code, codec)
get_codecget_codec(type_code) -> codec
format_ipv6format_ipv6(groups) -> address
parse_ipv6parse_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:

parse_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.