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

Commit 8909b101 authored by Chia-chi Yeh's avatar Chia-chi Yeh
Browse files

VPN: Use List<String> instead for dnsServers and searchDomains.

Change-Id: I5d72c182ad47f59121a04b68ec6c2d164e2d00a8
parent 1f7746b3
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -23,6 +23,8 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.os.SystemClock;

import java.util.List;

/**
 * A simple container used to carry information in VpnBuilder, VpnDialogs,
 * and com.android.server.connectivity.Vpn. Internal use only.
@@ -62,7 +64,8 @@ public class VpnConfig implements Parcelable {
    public int mtu = -1;
    public String addresses;
    public String routes;
    public String dnsServers;
    public List<String> dnsServers;
    public List<String> searchDomains;
    public long startTime = -1;

    @Override
@@ -79,7 +82,8 @@ public class VpnConfig implements Parcelable {
        out.writeInt(mtu);
        out.writeString(addresses);
        out.writeString(routes);
        out.writeString(dnsServers);
        out.writeStringList(dnsServers);
        out.writeStringList(searchDomains);
        out.writeLong(startTime);
    }

@@ -95,7 +99,8 @@ public class VpnConfig implements Parcelable {
            config.mtu = in.readInt();
            config.addresses = in.readString();
            config.routes = in.readString();
            config.dnsServers = in.readString();
            config.dnsServers = in.createStringArrayList();
            config.searchDomains = in.createStringArrayList();
            config.startTime = in.readLong();
            return config;
        }
+1 −1
Original line number Diff line number Diff line
@@ -2533,7 +2533,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
        private VpnCallback() {
        }

        public synchronized void override(String[] dnsServers) {
        public synchronized void override(List<String> dnsServers, List<String> searchDomains) {
            // TODO: override DNS servers and http proxy.
        }

+5 −2
Original line number Diff line number Diff line
@@ -190,11 +190,14 @@ public class Vpn extends INetworkManagementEventObserver.Stub {
            throw e;
        }

        String dnsServers = (config.dnsServers == null) ? "" : config.dnsServers.trim();
        mCallback.override(dnsServers.isEmpty() ? null : dnsServers.split(" "));
        // Override DNS servers and search domains.
        mCallback.override(config.dnsServers, config.searchDomains);

        // Fill more values.
        config.packageName = mPackageName;
        config.interfaceName = mInterfaceName;

        // Show the notification!
        showNotification(config, label, bitmap);
        return descriptor;
    }