1
0
Fork 0
mirror of https://codeberg.org/Mercury-IM/Smack synced 2025-09-09 10:19:41 +02:00

Bump MiniDNS to 0.3.0-alpha1

Also add minidns-core as dependency to smack-core. This requires
increasing the minimum required Android SDK level to 9, as this is
what MiniDNS requires.
This commit is contained in:
Florian Schmaus 2018-04-24 21:41:31 +02:00
parent 6c4a02691e
commit a91ca2aebf
21 changed files with 156 additions and 237 deletions

View file

@ -5,6 +5,6 @@ javax.naming API (e.g. Android)."""
dependencies {
compile project(path: ':smack-core')
compile 'de.measite.minidns:minidns-hla:[0.2,0.3)'
compile "org.minidns:minidns-hla:$miniDnsVersion"
compile "org.jxmpp:jxmpp-util-cache:$jxmppVersion"
}

View file

@ -31,8 +31,8 @@ import javax.net.ssl.X509TrustManager;
import org.jivesoftware.smack.util.dns.SmackDaneVerifier;
import de.measite.minidns.dane.DaneVerifier;
import de.measite.minidns.dane.ExpectingTrustManager;
import org.minidns.dane.DaneVerifier;
import org.minidns.dane.ExpectingTrustManager;
public class MiniDnsDaneVerifier implements SmackDaneVerifier {
private static final Logger LOGGER = Logger.getLogger(MiniDnsDaneVerifier.class.getName());

View file

@ -32,15 +32,17 @@ import org.jivesoftware.smack.util.dns.DNSResolver;
import org.jivesoftware.smack.util.dns.HostAddress;
import org.jivesoftware.smack.util.dns.SRVRecord;
import de.measite.minidns.DNSMessage.RESPONSE_CODE;
import de.measite.minidns.Question;
import de.measite.minidns.hla.DnssecResolverApi;
import de.measite.minidns.hla.ResolutionUnsuccessfulException;
import de.measite.minidns.hla.ResolverApi;
import de.measite.minidns.hla.ResolverResult;
import de.measite.minidns.record.A;
import de.measite.minidns.record.AAAA;
import de.measite.minidns.record.SRV;
import org.minidns.dnsmessage.DNSMessage.RESPONSE_CODE;
import org.minidns.dnsmessage.Question;
import org.minidns.dnsname.DNSName;
import org.minidns.hla.DnssecResolverApi;
import org.minidns.hla.ResolutionUnsuccessfulException;
import org.minidns.hla.ResolverApi;
import org.minidns.hla.ResolverResult;
import org.minidns.hla.SrvResolverResult;
import org.minidns.record.A;
import org.minidns.record.AAAA;
import org.minidns.record.SRV;
/**
@ -64,12 +66,12 @@ public class MiniDnsResolver extends DNSResolver implements SmackInitializer {
}
@Override
protected List<SRVRecord> lookupSRVRecords0(final String name, List<HostAddress> failedAddresses, DnssecMode dnssecMode) {
protected List<SRVRecord> lookupSRVRecords0(final DNSName name, List<HostAddress> failedAddresses, DnssecMode dnssecMode) {
final ResolverApi resolver = getResolver(dnssecMode);
ResolverResult<SRV> result;
SrvResolverResult result;
try {
result = resolver.resolve(name, SRV.class);
result = resolver.resolveSrv(name);
} catch (IOException e) {
failedAddresses.add(new HostAddress(name, e));
return null;
@ -87,7 +89,7 @@ public class MiniDnsResolver extends DNSResolver implements SmackInitializer {
List<SRVRecord> res = new LinkedList<>();
for (SRV srv : result.getAnswers()) {
String hostname = srv.name.ace;
DNSName hostname = srv.target;
List<InetAddress> hostAddresses = lookupHostAddress0(hostname, failedAddresses, dnssecMode);
if (shouldContinue(name, hostname, hostAddresses)) {
continue;
@ -101,7 +103,7 @@ public class MiniDnsResolver extends DNSResolver implements SmackInitializer {
}
@Override
protected List<InetAddress> lookupHostAddress0(final String name, List<HostAddress> failedAddresses, DnssecMode dnssecMode) {
protected List<InetAddress> lookupHostAddress0(final DNSName name, List<HostAddress> failedAddresses, DnssecMode dnssecMode) {
final ResolverApi resolver = getResolver(dnssecMode);
final ResolverResult<A> aResult;
@ -161,7 +163,7 @@ public class MiniDnsResolver extends DNSResolver implements SmackInitializer {
for (AAAA aaaa : aaaaResults) {
InetAddress inetAddress;
try {
inetAddress = InetAddress.getByAddress(name, aaaa.getIp());
inetAddress = InetAddress.getByAddress(name.ace, aaaa.getIp());
}
catch (UnknownHostException e) {
continue;
@ -191,7 +193,7 @@ public class MiniDnsResolver extends DNSResolver implements SmackInitializer {
}
}
private static boolean shouldAbortIfNotAuthentic(String name, DnssecMode dnssecMode,
private static boolean shouldAbortIfNotAuthentic(DNSName name, DnssecMode dnssecMode,
ResolverResult<?> result, List<HostAddress> failedAddresses) {
switch (dnssecMode) {
case needsDnssec: