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

Commit decfd707 authored by Chad Brubaker's avatar Chad Brubaker Committed by Android (Google) Code Review
Browse files

Merge "Add the calling package name to requestRouteToHost" into klp-dev

parents e9821bf2 18dd015e
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -356,10 +356,11 @@ class ContextImpl extends Context {
                            ctx.mMainThread.getHandler());
                }});

        registerService(CONNECTIVITY_SERVICE, new StaticServiceFetcher() {
                public Object createStaticService() {
        registerService(CONNECTIVITY_SERVICE, new ServiceFetcher() {
                public Object createService(ContextImpl ctx) {
                    IBinder b = ServiceManager.getService(CONNECTIVITY_SERVICE);
                    return new ConnectivityManager(IConnectivityManager.Stub.asInterface(b));
                    return new ConnectivityManager(IConnectivityManager.Stub.asInterface(b),
                        ctx.getPackageName());
                }});

        registerService(COUNTRY_DETECTOR, new StaticServiceFetcher() {
+5 −2
Original line number Diff line number Diff line
@@ -395,6 +395,8 @@ public class ConnectivityManager {

    private final IConnectivityManager mService;

    private final String mPackageName;

    /**
     * Tests if a given integer represents a valid network type.
     * @param networkType the type to be tested
@@ -802,7 +804,7 @@ public class ConnectivityManager {
    public boolean requestRouteToHostAddress(int networkType, InetAddress hostAddress) {
        byte[] address = hostAddress.getAddress();
        try {
            return mService.requestRouteToHostAddress(networkType, address);
            return mService.requestRouteToHostAddress(networkType, address, mPackageName);
        } catch (RemoteException e) {
            return false;
        }
@@ -898,8 +900,9 @@ public class ConnectivityManager {
    /**
     * {@hide}
     */
    public ConnectivityManager(IConnectivityManager service) {
    public ConnectivityManager(IConnectivityManager service, String packageName) {
        mService = checkNotNull(service, "missing IConnectivityManager");
        mPackageName = checkNotNull(packageName, "missing package name");
    }

    /** {@hide} */
+2 −2
Original line number Diff line number Diff line
@@ -71,9 +71,9 @@ interface IConnectivityManager

    int stopUsingNetworkFeature(int networkType, in String feature);

    boolean requestRouteToHost(int networkType, int hostAddress);
    boolean requestRouteToHost(int networkType, int hostAddress, String packageName);

    boolean requestRouteToHostAddress(int networkType, in byte[] hostAddress);
    boolean requestRouteToHostAddress(int networkType, in byte[] hostAddress, String packageName);

    boolean getMobileDataEnabled();
    void setMobileDataEnabled(boolean enabled);
+5 −4
Original line number Diff line number Diff line
@@ -1537,14 +1537,14 @@ public class ConnectivityService extends IConnectivityManager.Stub {
     * desired
     * @return {@code true} on success, {@code false} on failure
     */
    public boolean requestRouteToHost(int networkType, int hostAddress) {
    public boolean requestRouteToHost(int networkType, int hostAddress, String packageName) {
        InetAddress inetAddress = NetworkUtils.intToInetAddress(hostAddress);

        if (inetAddress == null) {
            return false;
        }

        return requestRouteToHostAddress(networkType, inetAddress.getAddress());
        return requestRouteToHostAddress(networkType, inetAddress.getAddress(), packageName);
    }

    /**
@@ -1556,7 +1556,8 @@ public class ConnectivityService extends IConnectivityManager.Stub {
     * desired
     * @return {@code true} on success, {@code false} on failure
     */
    public boolean requestRouteToHostAddress(int networkType, byte[] hostAddress) {
    public boolean requestRouteToHostAddress(int networkType, byte[] hostAddress,
            String packageName) {
        enforceChangePermission();
        if (mProtectedNetworks.contains(networkType)) {
            enforceConnectivityInternalPermission();
@@ -4351,7 +4352,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {

                            // Make a route to host so we check the specific interface.
                            if (mCs.requestRouteToHostAddress(ConnectivityManager.TYPE_MOBILE_HIPRI,
                                    hostAddr.getAddress())) {
                                    hostAddr.getAddress(), null)) {
                                // Wait a short time to be sure the route is established ??
                                log("isMobileOk:"
                                        + " wait to establish route to hostAddr=" + hostAddr);