toluol-proto

Crates.iotoluol-proto
lib.rstoluol-proto
version2.0.0
sourcesrc
created_at2022-09-18 13:36:46.193199
updated_at2022-09-18 13:36:46.193199
descriptionDNS protocol definitions for toluol
homepage
repositoryhttps://sr.ht/~mvforell/toluol
max_upload_size
id668625
size209,656
Max von Forell (mvforell)

documentation

https://docs.rs/toluol-proto

README

toluol-proto

crates.io docs.rs

This crate contains the DNS protocol definitions and implementations needed for toluol.

Useful resources

RDATA schema

If you ever need a compact representation of what the RDATA looks like for the most query types (e.g. if you want to parse DNS messages yourself), here's a code excerpt from DnsType::rdata_schema() in src/lib.rs.

DnsType::A => "ip4",
DnsType::NS | DnsType::CNAME | DnsType::DNAME | DnsType::PTR => "qname",
DnsType::SOA => "qname qname u32 u32 u32 u32 u32",
DnsType::HINFO => "string string",
DnsType::MX => "u16 qname",
DnsType::TXT => "text",
DnsType::RP => "qname qname",
DnsType::KEY | DnsType::DNSKEY => "u16 u8 u8 base64",
DnsType::AAAA => "ip6",
DnsType::LOC => "u8 u8 u8 u8 u32 u32 u32",
DnsType::SRV => "u16 u16 u16 qname",
DnsType::NAPTR => "u16 u16 string string string qname",
DnsType::CERT => "u16 u16 u8 base64",
DnsType::OPT => "options",
DnsType::DS => "u16 u8 u8 hex",
DnsType::SSHFP => "u8 u8 hex",
DnsType::RRSIG => "qtype u8 u8 u32 time time u16 qname base64",
DnsType::NSEC => "qname types",
DnsType::NSEC3 => "u8 u8 u16 salt hash types",
DnsType::NSEC3PARAM => "u8 u8 u16 salt",
DnsType::TLSA => "u8 u8 u8 hex",
DnsType::OPENPGPKEY => "base64",
DnsType::CAA => "u8 property",

License

See LICENSE.txt.


Copyright (c) 2022 Max von Forell

Commit count: 0

cargo fmt