rustd-resolved 0.2.2

Native DNS resolver and name-service daemon for RustD
interface io.rustd.Resolve

type DNSProtocol (dns, mdns, llmnr)
type DNSOverTLSMode (no, yes, opportunistic)
type ResolveSupport (no, yes, resolve)
type ResolvConfMode (uplink, stub, static, missing, foreign)

type ResourceKey (class: ?int, type: int, name: string)
type ResourceRecord (key: ResourceKey, priority: ?int, weight: ?int, port: ?int, name: ?string, cpu: ?string, os: ?string, items: ?[]string, address: ?[]int, mname: ?string, rname: ?string, serial: ?int, refresh: ?int, expire: ?int, minimum: ?int, exchange: ?string, version: ?int, size: ?int, horiz_pre: ?int, vert_pre: ?int, latitude: ?int, longitude: ?int, altitude: ?int, keyTag: ?int, algorithm: ?int, digestType: ?int, digest: ?string, fptype: ?int, fingerprint: ?string, flags: ?int, protocol: ?int, dnskey: ?string, signer: ?string, typeCovered: ?int, labels: ?int, originalTtl: ?int, expiration: ?int, inception: ?int, signature: ?string, nextDomain: ?string, types: ?[]int, iterations: ?int, salt: ?string, hash: ?string, certUsage: ?int, selector: ?int, matchingType: ?int, data: ?string, tag: ?string, value: ?string, target: ?string, svcparams: ?object, order: ?int, preference: ?int, naptrFlags: ?string, services: ?string, regexp: ?string, replacement: ?string)
type ResolvedAddress (ifindex: ?int, family: int, address: []int)
type ResolvedName (ifindex: ?int, name: string)
type ResolvedService (priority: int, weight: int, port: int, hostname: string, canonicalName: ?string, addresses: ?[]ResolvedAddress)
type ResolvedCanonical (name: ?string, type: string, domain: string)
type ResolvedRecord (ifindex: ?int, rr: ?ResourceRecord, raw: string)
type BrowseServiceUpdateFlag (added, removed)
type ServiceData (updateFlag: BrowseServiceUpdateFlag, family: int, name: ?string, type: string, domain: string, ifindex: int)
type DNSServer (address: []int, addressString: ?string, family: int, port: int, ifindex: ?int, name: ?string, accessible: bool)
type SearchDomain (name: string, routeOnly: bool, ifindex: ?int)
type DNSScope (protocol: DNSProtocol, family: ?int, ifindex: ?int, ifname: ?string, dnssec: ?string, dnsOverTLS: ?DNSOverTLSMode)
type DNSConfiguration (ifname: ?string, ifindex: ?int, delegate: ?string, defaultRoute: ?bool, currentServer: ?DNSServer, servers: ?[]DNSServer, fallbackServers: ?[]DNSServer, searchDomains: ?[]SearchDomain, negativeTrustAnchors: ?[]string, dnssec: ?string, dnssecSupported: ?bool, dnsOverTLS: ?DNSOverTLSMode, llmnr: ?string, mDNS: ?ResolveSupport, resolvConfMode: ?ResolvConfMode, scopes: ?[]DNSScope)

method ResolveHostname(ifindex: ?int, name: string, family: ?int, flags: ?int) -> (addresses: []ResolvedAddress, name: string, flags: int)
method ResolveAddress(ifindex: ?int, family: int, address: []int, flags: ?int) -> (names: []ResolvedName, flags: int)
method ResolveService(name: ?string, type: ?string, domain: string, ifindex: ?int, family: ?int, flags: ?int) -> (services: []ResolvedService, txt: ?[]string, canonical: ResolvedCanonical, flags: int)
method ResolveRecord(ifindex: ?int, name: string, class: ?int, type: int, flags: ?int) -> (rrs: []ResolvedRecord, flags: int)
method BrowseServices(domain: ?string, type: ?string, ifindex: ?int, flags: ?int) -> (browserServiceData: []ServiceData)
method DumpDNSConfiguration() -> (configuration: []DNSConfiguration)

error NoNameServers()
error NoSuchResourceRecord()
error QueryTimedOut()
error MaxAttemptsReached()
error InvalidReply()
error QueryAborted()
error QueryRefused()
error DNSSECValidationFailed(result: string, extendedDNSErrorCode: ?int, extendedDNSErrorMessage: ?string)
error NoTrustAnchor()
error ResourceRecordTypeUnsupported()
error NetworkDown()
error NoSource()
error StubLoop()
error DNSError(rcode: int, extendedDNSErrorCode: ?int, extendedDNSErrorMessage: ?string)
error CNAMELoop()
error BadAddressSize()
error ResourceRecordTypeInvalidForQuery()
error ZoneTransfersNotPermitted()
error ResourceRecordTypeObsolete()
error InconsistentServiceRecords()
error ServiceNotProvided()