Move DnsPacket to libs net
This class might be used by some mainline modules. Bug: 151052811 Test: atest DnsPacketTest Test: atest DnsResolverTest (clean cherry-pick from internal branch) Merged-In: I8841d91456952ded5efbf8ea221289aecc7746ad Change-Id: I8841d91456952ded5efbf8ea221289aecc7746ad
This commit is contained in:
@@ -38,6 +38,8 @@ import android.os.MessageQueue;
|
|||||||
import android.system.ErrnoException;
|
import android.system.ErrnoException;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
|
import com.android.net.module.util.DnsPacket;
|
||||||
|
|
||||||
import java.io.FileDescriptor;
|
import java.io.FileDescriptor;
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
@@ -97,7 +99,7 @@ public final class DnsResolver {
|
|||||||
@interface DnsError {}
|
@interface DnsError {}
|
||||||
/**
|
/**
|
||||||
* Indicates that there was an error parsing the response the query.
|
* Indicates that there was an error parsing the response the query.
|
||||||
* The cause of this error is available via getCause() and is a ParseException.
|
* The cause of this error is available via getCause() and is a {@link ParseException}.
|
||||||
*/
|
*/
|
||||||
public static final int ERROR_PARSE = 0;
|
public static final int ERROR_PARSE = 0;
|
||||||
/**
|
/**
|
||||||
@@ -290,8 +292,15 @@ public final class DnsResolver {
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
mAllAnswers.addAll(new DnsAddressAnswer(answer).getAddresses());
|
mAllAnswers.addAll(new DnsAddressAnswer(answer).getAddresses());
|
||||||
} catch (ParseException e) {
|
} catch (DnsPacket.ParseException e) {
|
||||||
mDnsException = new DnsException(ERROR_PARSE, e);
|
// Convert the com.android.net.module.util.DnsPacket.ParseException to an
|
||||||
|
// android.net.ParseException. This is the type that was used in Q and is implied
|
||||||
|
// by the public documentation of ERROR_PARSE.
|
||||||
|
//
|
||||||
|
// DnsPacket cannot throw android.net.ParseException directly because it's @hide.
|
||||||
|
ParseException pe = new ParseException(e.reason, e.getCause());
|
||||||
|
pe.setStackTrace(e.getStackTrace());
|
||||||
|
mDnsException = new DnsException(ERROR_PARSE, pe);
|
||||||
}
|
}
|
||||||
maybeReportAnswer();
|
maybeReportAnswer();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user