netty5/codec-dns/src/main/java/io/netty/handler/codec/dns
Norman Maurer 1a53df1031 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:40 +02:00
..
AbstractDnsMessage.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +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 15:55:07 +01:00
DatagramDnsQuery.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DatagramDnsQueryDecoder.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
DatagramDnsQueryEncoder.java Add support for TCP fallback when we receive a truncated DnsResponse (#9139) 2019-05-17 14:47:10 +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:40 +02:00
DatagramDnsResponseEncoder.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
DefaultDnsOptEcsRecord.java Add support for Client Subnet in DNS Queries (RFC7871) 2016-09-06 07:16:57 +02:00
DefaultDnsPtrRecord.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01: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 migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
DefaultDnsRecordDecoder.java Detect truncated responses caused by EDNS0 and MTU miss-match (#9468) 2019-08-17 09:58:40 +02:00
DefaultDnsRecordEncoder.java Pre-decompressed DNS record RData that may contain compression pointers (#9311) 2019-07-02 19:39:21 +02:00
DefaultDnsResponse.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
DnsCodecUtil.java Pre-decompressed DNS record RData that may contain compression pointers (#9311) 2019-07-02 19:39:21 +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 migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01: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:47:10 +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 Java 8 migration: Use diamond operator (#8749) 2019-01-22 16:07:26 +01:00
DnsResponse.java [#5088] Add annotation which marks packages/interfaces/classes as unstable 2016-05-09 15:16:35 +02:00
DnsResponseCode.java migrate java8: use requireNonNull (#8840) 2019-02-04 10:32:25 +01:00
DnsResponseDecoder.java Detect truncated responses caused by EDNS0 and MTU miss-match (#9468) 2019-08-17 09:58:40 +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:47:10 +02:00
TcpDnsResponseDecoder.java Add support for TCP fallback when we receive a truncated DnsResponse (#9139) 2019-05-17 14:47:10 +02:00