mirror of
https://github.com/MatsuriDayo/NekoBoxForAndroid.git
synced 2025-12-20 07:00:05 +08:00
fix local dns error
This commit is contained in:
parent
da682b1dd4
commit
5d450b798a
@ -104,11 +104,8 @@ object LocalResolverImpl : LocalResolver, LocalDNSTransport {
|
||||
ctx.onCancel(signal::cancel)
|
||||
val callback = object : DnsResolver.Callback<ByteArray> {
|
||||
override fun onAnswer(answer: ByteArray, rcode: Int) {
|
||||
if (rcode == 0) {
|
||||
// exchange don't generate rcode error
|
||||
ctx.rawSuccess(answer)
|
||||
} else {
|
||||
ctx.errorCode(rcode)
|
||||
}
|
||||
continuation.resume(Unit)
|
||||
}
|
||||
|
||||
@ -191,10 +188,13 @@ object LocalResolverImpl : LocalResolver, LocalDNSTransport {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
val underlyingNetwork =
|
||||
SagerNet.underlyingNetwork ?: error("upstream network not found")
|
||||
val answer = try {
|
||||
underlyingNetwork.getAllByName(domain)
|
||||
val u = SagerNet.underlyingNetwork
|
||||
if (u != null) {
|
||||
u.getAllByName(domain)
|
||||
} else {
|
||||
InetAddress.getAllByName(domain)
|
||||
}
|
||||
} catch (e: UnknownHostException) {
|
||||
ctx.errorCode(RCODE_NXDOMAIN)
|
||||
return
|
||||
|
||||
Loading…
Reference in New Issue
Block a user