Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 51a5dab5 authored by Luke Huang's avatar Luke Huang Committed by android-build-merger
Browse files

Merge "Fix DnsResolver API could not bypass private DNS correctly" am: 40e7fb6a

am: 70155729

Change-Id: Ib2f8ae73e2a9d76d87243d53cac1157032156082
parents 32758ac7 70155729
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -197,7 +197,7 @@ public final class DnsResolver {
        final FileDescriptor queryfd;
        try {
            queryfd = resNetworkSend((network != null
                ? network.netId : NETID_UNSET), query, query.length, flags);
                ? network.getNetIdForResolv() : NETID_UNSET), query, query.length, flags);
        } catch (ErrnoException e) {
            executor.execute(() -> callback.onError(new DnsException(ERROR_SYSTEM, e)));
            return;
@@ -238,7 +238,7 @@ public final class DnsResolver {
        final FileDescriptor queryfd;
        try {
            queryfd = resNetworkQuery((network != null
                    ? network.netId : NETID_UNSET), domain, nsClass, nsType, flags);
                    ? network.getNetIdForResolv() : NETID_UNSET), domain, nsClass, nsType, flags);
        } catch (ErrnoException e) {
            executor.execute(() -> callback.onError(new DnsException(ERROR_SYSTEM, e)));
            return;
@@ -346,7 +346,8 @@ public final class DnsResolver {
        if (queryIpv6) {
            try {
                v6fd = resNetworkQuery((network != null
                        ? network.netId : NETID_UNSET), domain, CLASS_IN, TYPE_AAAA, flags);
                        ? network.getNetIdForResolv() : NETID_UNSET),
                        domain, CLASS_IN, TYPE_AAAA, flags);
            } catch (ErrnoException e) {
                executor.execute(() -> callback.onError(new DnsException(ERROR_SYSTEM, e)));
                return;
@@ -365,7 +366,8 @@ public final class DnsResolver {
        if (queryIpv4) {
            try {
                v4fd = resNetworkQuery((network != null
                        ? network.netId : NETID_UNSET), domain, CLASS_IN, TYPE_A, flags);
                        ? network.getNetIdForResolv() : NETID_UNSET),
                        domain, CLASS_IN, TYPE_A, flags);
            } catch (ErrnoException e) {
                if (queryIpv6) resNetworkCancel(v6fd);  // Closes fd, marks it invalid.
                executor.execute(() -> callback.onError(new DnsException(ERROR_SYSTEM, e)));
@@ -423,7 +425,7 @@ public final class DnsResolver {
        final FileDescriptor queryfd;
        try {
            queryfd = resNetworkQuery((network != null
                    ? network.netId : NETID_UNSET), domain, CLASS_IN, nsType, flags);
                    ? network.getNetIdForResolv() : NETID_UNSET), domain, CLASS_IN, nsType, flags);
        } catch (ErrnoException e) {
            executor.execute(() -> callback.onError(new DnsException(ERROR_SYSTEM, e)));
            return;