From 1ee5f47bbc39b5734d1f354c7cef4f655b27ff80 Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Tue, 21 May 2024 10:30:02 +0200 Subject: [PATCH] catch invalid DNSName (newly introduced in minidns) --- src/main/java/de/gultsch/minidns/NetworkDataSource.java | 3 ++- src/main/java/eu/siacs/conversations/utils/Resolver.java | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/de/gultsch/minidns/NetworkDataSource.java b/src/main/java/de/gultsch/minidns/NetworkDataSource.java index 0714594feaaa2c1afa4f8d757be8863c30a3d39e..ee8266780d7895cf5eca20e2859c70fc165ca473 100644 --- a/src/main/java/de/gultsch/minidns/NetworkDataSource.java +++ b/src/main/java/de/gultsch/minidns/NetworkDataSource.java @@ -15,6 +15,7 @@ import eu.siacs.conversations.Config; import org.minidns.MiniDnsException; import org.minidns.dnsmessage.DnsMessage; +import org.minidns.dnsname.InvalidDnsNameException; import org.minidns.dnsqueryresult.DnsQueryResult; import org.minidns.dnsqueryresult.StandardDnsQueryResult; import org.minidns.util.MultipleIoException; @@ -172,7 +173,7 @@ public class NetworkDataSource extends org.minidns.source.NetworkDataSource { public static DnsMessage readDNSMessage(final byte[] bytes) throws IOException { try { return new DnsMessage(bytes); - } catch (final IllegalArgumentException e) { + } catch (final InvalidDnsNameException | IllegalArgumentException e) { throw new IOException(Throwables.getRootCause(e)); } } diff --git a/src/main/java/eu/siacs/conversations/utils/Resolver.java b/src/main/java/eu/siacs/conversations/utils/Resolver.java index 99be0592448eee99845bc05ffb58ca066e4bb997..9d089ad05de24f8a7ca22ab73722321380a53947 100644 --- a/src/main/java/eu/siacs/conversations/utils/Resolver.java +++ b/src/main/java/eu/siacs/conversations/utils/Resolver.java @@ -27,6 +27,7 @@ import eu.siacs.conversations.xmpp.Jid; import org.minidns.dnsmessage.Question; import org.minidns.dnsname.DnsName; +import org.minidns.dnsname.InvalidDnsNameException; import org.minidns.dnsqueryresult.DnsQueryResult; import org.minidns.record.A; import org.minidns.record.AAAA; @@ -97,7 +98,7 @@ public class Resolver { try { DnsName.from(hostname); return false; - } catch (IllegalArgumentException e) { + } catch (final InvalidDnsNameException | IllegalArgumentException e) { return true; } }