netty5/codec-dns/src/main/java/io/netty/handler/codec/dns
Norman Maurer d0bfbdde8e
Detect truncated responses caused by EDNS0 and MTU miss-match (#9468)
Motivation:

It is possible that the user uses a too big EDNS0 setting for the MTU and so we may receive a truncated datagram packet. In this case we should try to detect this and retry via TCP if possible

Modifications:

- Fix detecting of incomplete records
- Mark response as truncated if we did not consume the whole packet
- Add unit test

Result:

Fixes https://github.com/netty/netty/issues/9365
2019-08-17 09:58:22 +02:00
..
AbstractDnsMessage.java Fix false-positives when using ResourceLeakDetector. 2016-12-04 09:01:39 +01:00
AbstractDnsOptPseudoRrRecord.java Add support for Client Subnet in DNS Queries (RFC7871) 2016-09-06 07:16:57 +02:00
AbstractDnsRecord.java use checkPositive/checkPositiveOrZero (#8835) 2019-02-04 16:01:49 +01:00
DatagramDnsQuery.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DatagramDnsQueryDecoder.java Clean-up unused imports 2016-09-30 09:08:50 +02:00
DatagramDnsQueryEncoder.java remove unused imports (#9287) 2019-06-26 21:08:31 +02:00
DatagramDnsResponse.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DatagramDnsResponseDecoder.java Detect truncated responses caused by EDNS0 and MTU miss-match (#9468) 2019-08-17 09:58:22 +02:00
DatagramDnsResponseEncoder.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DefaultDnsOptEcsRecord.java Add support for Client Subnet in DNS Queries (RFC7871) 2016-09-06 07:16:57 +02:00
DefaultDnsPtrRecord.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DefaultDnsQuery.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DefaultDnsQuestion.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DefaultDnsRawRecord.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
DefaultDnsRecordDecoder.java Detect truncated responses caused by EDNS0 and MTU miss-match (#9468) 2019-08-17 09:58:22 +02:00
DefaultDnsRecordEncoder.java Pre-decompressed DNS record RData that may contain compression pointers (#9311) 2019-07-02 19:38:50 +02:00
DefaultDnsResponse.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsCodecUtil.java Pre-decompressed DNS record RData that may contain compression pointers (#9311) 2019-07-02 19:38:50 +02:00
DnsMessage.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsMessageUtil.java Fix type inference w/ JDK8 2016-03-23 18:06:38 +01:00
DnsOpCode.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsOptEcsRecord.java fix the typos 2017-04-20 04:56:09 +02:00
DnsOptPseudoRecord.java Add support for Client Subnet in DNS Queries (RFC7871) 2016-09-06 07:16:57 +02:00
DnsPtrRecord.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsQuery.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsQueryEncoder.java Add support for TCP fallback when we receive a truncated DnsResponse (#9139) 2019-05-17 14:37:11 +02:00
DnsQuestion.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsRawRecord.java Make retained derived buffers recyclable 2016-05-17 11:16:13 +02:00
DnsRecord.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsRecordDecoder.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsRecordEncoder.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsRecordType.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsResponse.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsResponseCode.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsResponseDecoder.java Detect truncated responses caused by EDNS0 and MTU miss-match (#9468) 2019-08-17 09:58:22 +02:00
DnsSection.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
package-info.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
TcpDnsQueryEncoder.java Add support for TCP fallback when we receive a truncated DnsResponse (#9139) 2019-05-17 14:37:11 +02:00
TcpDnsResponseDecoder.java Add support for TCP fallback when we receive a truncated DnsResponse (#9139) 2019-05-17 14:37:11 +02:00