diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
commit | 43a97878ce14b72f0981164f87f2e35e14151312 (patch) | |
tree | 620249daf56c0258faa40cbdcf9cfba06de2a846 /third_party/rust/dns-parser/src/error.rs | |
parent | Initial commit. (diff) | |
download | firefox-43a97878ce14b72f0981164f87f2e35e14151312.tar.xz firefox-43a97878ce14b72f0981164f87f2e35e14151312.zip |
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'third_party/rust/dns-parser/src/error.rs')
-rw-r--r-- | third_party/rust/dns-parser/src/error.rs | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/third_party/rust/dns-parser/src/error.rs b/third_party/rust/dns-parser/src/error.rs new file mode 100644 index 0000000000..ae6a39747d --- /dev/null +++ b/third_party/rust/dns-parser/src/error.rs @@ -0,0 +1,71 @@ +use std::str::Utf8Error; + +quick_error! { + /// Error parsing DNS packet + #[derive(Debug)] + pub enum Error { + /// Invalid compression pointer not pointing backwards + /// when parsing label + BadPointer { + description("invalid compression pointer not pointing backwards \ + when parsing label") + } + /// Packet is smaller than header size + HeaderTooShort { + description("packet is smaller than header size") + } + /// Packet ihas incomplete data + UnexpectedEOF { + description("packet is has incomplete data") + } + /// Wrong (too short or too long) size of RDATA + WrongRdataLength { + description("wrong (too short or too long) size of RDATA") + } + /// Packet has non-zero reserved bits + ReservedBitsAreNonZero { + description("packet has non-zero reserved bits") + } + /// Label in domain name has unknown label format + UnknownLabelFormat { + description("label in domain name has unknown label format") + } + /// Query type code is invalid + InvalidQueryType(code: u16) { + description("query type code is invalid") + display("query type {} is invalid", code) + } + /// Query class code is invalid + InvalidQueryClass(code: u16) { + description("query class code is invalid") + display("query class {} is invalid", code) + } + /// Type code is invalid + InvalidType(code: u16) { + description("type code is invalid") + display("type {} is invalid", code) + } + /// Class code is invalid + InvalidClass(code: u16) { + description("class code is invalid") + display("class {} is invalid", code) + } + /// Invalid characters encountered while reading label + LabelIsNotAscii { + description("invalid characters encountered while reading label") + } + /// Invalid characters encountered while reading TXT + TxtDataIsNotUTF8(error: Utf8Error) { + description("invalid characters encountered while reading TXT") + display("{:?}", error) + } + /// Parser is in the wrong state + WrongState { + description("parser is in the wrong state") + } + /// Additional OPT record found + AdditionalOPT { + description("additional OPT record found") + } + } +} |