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

Commit eb1c486a authored by lucaslin's avatar lucaslin
Browse files

Check if NetworkSpecifier is an instance of MatchAllNetworkSpecifier

To prevent mainline module related file to access a hidden API,
check whether the NetworkSpecifier is an instance of
MatchAllNetworkSpecifier by itself.

Bug: 172183305
Test: atest FrameworksNetTests
Change-Id: I4d49cb70ff3c8a7e1ffa32e38207c74a6375e51a
parent 7166f0b4
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -353,7 +353,9 @@ public class NetworkRequest implements Parcelable {
         *                         NetworkSpecifier.
         */
        public Builder setNetworkSpecifier(NetworkSpecifier networkSpecifier) {
            MatchAllNetworkSpecifier.checkNotMatchAllNetworkSpecifier(networkSpecifier);
            if (networkSpecifier instanceof MatchAllNetworkSpecifier) {
                throw new IllegalArgumentException("A MatchAllNetworkSpecifier is not permitted");
            }
            mNetworkCapabilities.setNetworkSpecifier(networkSpecifier);
            return this;
        }
+3 −1
Original line number Diff line number Diff line
@@ -5580,7 +5580,9 @@ public class ConnectivityService extends IConnectivityManager.Stub
        if (ns == null) {
            return;
        }
        MatchAllNetworkSpecifier.checkNotMatchAllNetworkSpecifier(ns);
        if (ns instanceof MatchAllNetworkSpecifier) {
            throw new IllegalArgumentException("A MatchAllNetworkSpecifier is not permitted");
        }
    }

    private void ensureValid(NetworkCapabilities nc) {