Use CONNECTIVITY_INTERNAL for global proxy
The Global http proxy shouldn't be used by apps, but can be useful in certain conditions. bug:8264794 bug:8557674 Change-Id: Ia3cbe542e448d9e74d0492626a13e9fd34ad797a
This commit is contained in:
@@ -1136,7 +1136,7 @@ public class ConnectivityManager {
|
||||
* HTTP proxy. A {@code null} value will clear the global HTTP proxy.
|
||||
*
|
||||
* <p>This method requires the call to hold the permission
|
||||
* {@link android.Manifest.permission#CHANGE_NETWORK_STATE}.
|
||||
* {@link android.Manifest.permission#CONNECTIVITY_INTERNAL}.
|
||||
* {@hide}
|
||||
*/
|
||||
public void setGlobalProxy(ProxyProperties p) {
|
||||
|
||||
@@ -3045,7 +3045,7 @@ public class ConnectivityService extends IConnectivityManager.Stub {
|
||||
}
|
||||
|
||||
public void setGlobalProxy(ProxyProperties proxyProperties) {
|
||||
enforceChangePermission();
|
||||
enforceConnectivityInternalPermission();
|
||||
synchronized (mProxyLock) {
|
||||
if (proxyProperties == mGlobalProxy) return;
|
||||
if (proxyProperties != null && proxyProperties.equals(mGlobalProxy)) return;
|
||||
@@ -3063,10 +3063,15 @@ public class ConnectivityService extends IConnectivityManager.Stub {
|
||||
mGlobalProxy = null;
|
||||
}
|
||||
ContentResolver res = mContext.getContentResolver();
|
||||
Settings.Global.putString(res, Settings.Global.GLOBAL_HTTP_PROXY_HOST, host);
|
||||
Settings.Global.putInt(res, Settings.Global.GLOBAL_HTTP_PROXY_PORT, port);
|
||||
Settings.Global.putString(res, Settings.Global.GLOBAL_HTTP_PROXY_EXCLUSION_LIST,
|
||||
exclList);
|
||||
final long token = Binder.clearCallingIdentity();
|
||||
try {
|
||||
Settings.Global.putString(res, Settings.Global.GLOBAL_HTTP_PROXY_HOST, host);
|
||||
Settings.Global.putInt(res, Settings.Global.GLOBAL_HTTP_PROXY_PORT, port);
|
||||
Settings.Global.putString(res, Settings.Global.GLOBAL_HTTP_PROXY_EXCLUSION_LIST,
|
||||
exclList);
|
||||
} finally {
|
||||
Binder.restoreCallingIdentity(token);
|
||||
}
|
||||
}
|
||||
|
||||
if (mGlobalProxy == null) {
|
||||
|
||||
Reference in New Issue
Block a user