Expand description
DNS resolver for VeridianOS
Provides DNS name resolution with caching, label compression, and support for common record types (A, AAAA, CNAME, MX, TXT, PTR, SRV).
Structs§
- DnsCache
- DNS cache with LRU eviction and TTL-based expiry
- DnsHeader
- DNS message header (12 bytes)
- DnsQuestion
- DNS question section entry
- DnsRecord
- DNS resource record
- DnsResolver
- DNS resolver with caching and multiple nameserver support
- Host
Entry - Static host entry (from /etc/hosts)
Enums§
- DnsClass
- DNS class codes
- DnsError
- DNS-specific errors
- DnsRecord
Data - DNS resource record data
- DnsRecord
Type - DNS record type codes
- DnsResponse
Code - DNS response codes (RCODE)
Constants§
- DNS_
PORT - DNS default port
Functions§
- add_
host - Add a host entry to the global resolver
- add_
nameserver - Add a nameserver to the global resolver
- build_
query - Build a DNS query message for the given name and record type.
- decode_
name - Decode a DNS label sequence from a message buffer, handling pointer compression.
- encode_
name - Encode a dotted domain name into DNS label format.
- init
- Initialize the global DNS resolver
- parse_
response - Parse a DNS response message and extract resource records.
- resolve
- Resolve a domain name using the global resolver