am 33f94286: am 34f86312: Merge "Migrate legacy VPN arguments to system_server." into jb-mr1-dev
* commit '33f942865c27a0af155ec2be2f1154fe7ece6072': Migrate legacy VPN arguments to system_server.
This commit is contained in:
@@ -26,6 +26,7 @@ import android.os.ParcelFileDescriptor;
|
|||||||
|
|
||||||
import com.android.internal.net.LegacyVpnInfo;
|
import com.android.internal.net.LegacyVpnInfo;
|
||||||
import com.android.internal.net.VpnConfig;
|
import com.android.internal.net.VpnConfig;
|
||||||
|
import com.android.internal.net.VpnProfile;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Interface that answers queries about, and allows changing, the
|
* Interface that answers queries about, and allows changing, the
|
||||||
@@ -118,7 +119,7 @@ interface IConnectivityManager
|
|||||||
|
|
||||||
ParcelFileDescriptor establishVpn(in VpnConfig config);
|
ParcelFileDescriptor establishVpn(in VpnConfig config);
|
||||||
|
|
||||||
void startLegacyVpn(in VpnConfig config, in String[] racoon, in String[] mtpd);
|
void startLegacyVpn(in VpnProfile profile);
|
||||||
|
|
||||||
LegacyVpnInfo getLegacyVpnInfo();
|
LegacyVpnInfo getLegacyVpnInfo();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,6 +31,8 @@ import static android.net.ConnectivityManager.isNetworkTypeValid;
|
|||||||
import static android.net.NetworkPolicyManager.RULE_ALLOW_ALL;
|
import static android.net.NetworkPolicyManager.RULE_ALLOW_ALL;
|
||||||
import static android.net.NetworkPolicyManager.RULE_REJECT_METERED;
|
import static android.net.NetworkPolicyManager.RULE_REJECT_METERED;
|
||||||
|
|
||||||
|
import android.app.NotificationManager;
|
||||||
|
import android.app.PendingIntent;
|
||||||
import android.bluetooth.BluetoothTetheringDataTracker;
|
import android.bluetooth.BluetoothTetheringDataTracker;
|
||||||
import android.content.ContentResolver;
|
import android.content.ContentResolver;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
@@ -78,6 +80,7 @@ import android.os.ServiceManager;
|
|||||||
import android.os.SystemClock;
|
import android.os.SystemClock;
|
||||||
import android.os.SystemProperties;
|
import android.os.SystemProperties;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
import android.security.KeyStore;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.EventLog;
|
import android.util.EventLog;
|
||||||
import android.util.Slog;
|
import android.util.Slog;
|
||||||
@@ -85,8 +88,10 @@ import android.util.SparseIntArray;
|
|||||||
|
|
||||||
import com.android.internal.net.LegacyVpnInfo;
|
import com.android.internal.net.LegacyVpnInfo;
|
||||||
import com.android.internal.net.VpnConfig;
|
import com.android.internal.net.VpnConfig;
|
||||||
|
import com.android.internal.net.VpnProfile;
|
||||||
import com.android.internal.telephony.Phone;
|
import com.android.internal.telephony.Phone;
|
||||||
import com.android.internal.telephony.PhoneConstants;
|
import com.android.internal.telephony.PhoneConstants;
|
||||||
|
import com.android.internal.util.Preconditions;
|
||||||
import com.android.server.am.BatteryStatsService;
|
import com.android.server.am.BatteryStatsService;
|
||||||
import com.android.server.connectivity.Tethering;
|
import com.android.server.connectivity.Tethering;
|
||||||
import com.android.server.connectivity.Vpn;
|
import com.android.server.connectivity.Vpn;
|
||||||
@@ -137,6 +142,8 @@ public class ConnectivityService extends IConnectivityManager.Stub {
|
|||||||
private Tethering mTethering;
|
private Tethering mTethering;
|
||||||
private boolean mTetheringConfigValid = false;
|
private boolean mTetheringConfigValid = false;
|
||||||
|
|
||||||
|
private final KeyStore mKeyStore;
|
||||||
|
|
||||||
private Vpn mVpn;
|
private Vpn mVpn;
|
||||||
private VpnCallback mVpnCallback = new VpnCallback();
|
private VpnCallback mVpnCallback = new VpnCallback();
|
||||||
|
|
||||||
@@ -371,6 +378,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
|
|||||||
mContext = checkNotNull(context, "missing Context");
|
mContext = checkNotNull(context, "missing Context");
|
||||||
mNetd = checkNotNull(netManager, "missing INetworkManagementService");
|
mNetd = checkNotNull(netManager, "missing INetworkManagementService");
|
||||||
mPolicyManager = checkNotNull(policyManager, "missing INetworkPolicyManager");
|
mPolicyManager = checkNotNull(policyManager, "missing INetworkPolicyManager");
|
||||||
|
mKeyStore = KeyStore.getInstance();
|
||||||
|
|
||||||
try {
|
try {
|
||||||
mPolicyManager.registerListener(mPolicyListener);
|
mPolicyManager.registerListener(mPolicyListener);
|
||||||
@@ -3126,14 +3134,16 @@ public class ConnectivityService extends IConnectivityManager.Stub {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Start legacy VPN and return an intent to VpnDialogs. This method is
|
* Start legacy VPN, controlling native daemons as needed. Creates a
|
||||||
* used by VpnSettings and not available in ConnectivityManager.
|
* secondary thread to perform connection work, returning quickly.
|
||||||
* Permissions are checked in Vpn class.
|
|
||||||
* @hide
|
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void startLegacyVpn(VpnConfig config, String[] racoon, String[] mtpd) {
|
public void startLegacyVpn(VpnProfile profile) {
|
||||||
mVpn.startLegacyVpn(config, racoon, mtpd);
|
final LinkProperties egress = getActiveLinkProperties();
|
||||||
|
if (egress == null) {
|
||||||
|
throw new IllegalStateException("Missing active network connection");
|
||||||
|
}
|
||||||
|
mVpn.startLegacyVpn(profile, mKeyStore, egress);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user