catch invalid DNSName (newly introduced in minidns)

Daniel Gultsch created

Change summary

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(-)

Detailed changes

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));
         }
     }

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;
         }
     }