android: Add properties to VPN profiles for proxy server configuration
This commit is contained in:
+5
-2
@@ -1,6 +1,6 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 2023 Relution GmbH
|
* Copyright (C) 2023 Relution GmbH
|
||||||
* Copyright (C) 2012-2024 Tobias Brunner
|
* Copyright (C) 2012-2025 Tobias Brunner
|
||||||
* Copyright (C) 2012 Giuliano Grassi
|
* Copyright (C) 2012 Giuliano Grassi
|
||||||
* Copyright (C) 2012 Ralf Sager
|
* Copyright (C) 2012 Ralf Sager
|
||||||
*
|
*
|
||||||
@@ -67,6 +67,9 @@ public class DatabaseHelper extends SQLiteOpenHelper
|
|||||||
new DbColumn(VpnProfileDataSource.KEY_IKE_PROPOSAL, "TEXT", 15),
|
new DbColumn(VpnProfileDataSource.KEY_IKE_PROPOSAL, "TEXT", 15),
|
||||||
new DbColumn(VpnProfileDataSource.KEY_ESP_PROPOSAL, "TEXT", 15),
|
new DbColumn(VpnProfileDataSource.KEY_ESP_PROPOSAL, "TEXT", 15),
|
||||||
new DbColumn(VpnProfileDataSource.KEY_DNS_SERVERS, "TEXT", 17),
|
new DbColumn(VpnProfileDataSource.KEY_DNS_SERVERS, "TEXT", 17),
|
||||||
|
new DbColumn(VpnProfileDataSource.KEY_PROXY_HOST, "TEXT", 19),
|
||||||
|
new DbColumn(VpnProfileDataSource.KEY_PROXY_PORT, "INTEGER", 19),
|
||||||
|
new DbColumn(VpnProfileDataSource.KEY_PROXY_EXCLUSIONS, "TEXT", 19),
|
||||||
});
|
});
|
||||||
|
|
||||||
public static final DbTable TABLE_TRUSTED_CERTIFICATE = new DbTable(TABLE_NAME_TRUSTED_CERTIFICATE, 18, new DbColumn[]{
|
public static final DbTable TABLE_TRUSTED_CERTIFICATE = new DbTable(TABLE_NAME_TRUSTED_CERTIFICATE, 18, new DbColumn[]{
|
||||||
@@ -84,7 +87,7 @@ public class DatabaseHelper extends SQLiteOpenHelper
|
|||||||
new DbColumn(ManagedUserCertificate.KEY_PASSWORD, "TEXT", 18),
|
new DbColumn(ManagedUserCertificate.KEY_PASSWORD, "TEXT", 18),
|
||||||
});
|
});
|
||||||
|
|
||||||
private static final int DATABASE_VERSION = 18;
|
private static final int DATABASE_VERSION = 19;
|
||||||
|
|
||||||
private static final Set<DbTable> TABLES;
|
private static final Set<DbTable> TABLES;
|
||||||
|
|
||||||
|
|||||||
+33
-3
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (C) 2012-2019 Tobias Brunner
|
* Copyright (C) 2012-2025 Tobias Brunner
|
||||||
* Copyright (C) 2012 Giuliano Grassi
|
* Copyright (C) 2012 Giuliano Grassi
|
||||||
* Copyright (C) 2012 Ralf Sager
|
* Copyright (C) 2012 Ralf Sager
|
||||||
*
|
*
|
||||||
@@ -42,8 +42,8 @@ public class VpnProfile implements Cloneable
|
|||||||
|
|
||||||
private String mName, mGateway, mUsername, mPassword, mCertificate, mUserCertificate;
|
private String mName, mGateway, mUsername, mPassword, mCertificate, mUserCertificate;
|
||||||
private String mRemoteId, mLocalId, mExcludedSubnets, mIncludedSubnets, mSelectedApps;
|
private String mRemoteId, mLocalId, mExcludedSubnets, mIncludedSubnets, mSelectedApps;
|
||||||
private String mIkeProposal, mEspProposal, mDnsServers;
|
private String mIkeProposal, mEspProposal, mDnsServers, mProxyHost, mProxyExclusions;
|
||||||
private Integer mMTU, mPort, mSplitTunneling, mNATKeepAlive, mFlags;
|
private Integer mMTU, mPort, mProxyPort, mSplitTunneling, mNATKeepAlive, mFlags;
|
||||||
private SelectedAppsHandling mSelectedAppsHandling = SelectedAppsHandling.SELECTED_APPS_DISABLE;
|
private SelectedAppsHandling mSelectedAppsHandling = SelectedAppsHandling.SELECTED_APPS_DISABLE;
|
||||||
private VpnType mVpnType;
|
private VpnType mVpnType;
|
||||||
private UUID mUUID;
|
private UUID mUUID;
|
||||||
@@ -313,6 +313,36 @@ public class VpnProfile implements Cloneable
|
|||||||
return mSelectedAppsHandling;
|
return mSelectedAppsHandling;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getProxyHost()
|
||||||
|
{
|
||||||
|
return mProxyHost;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProxyHost(String proxy)
|
||||||
|
{
|
||||||
|
this.mProxyHost = proxy;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Integer getProxyPort()
|
||||||
|
{
|
||||||
|
return mProxyPort;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProxyPort(Integer port)
|
||||||
|
{
|
||||||
|
this.mProxyPort = port;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getProxyExclusions()
|
||||||
|
{
|
||||||
|
return mProxyExclusions;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setProxyExclusions(String exclusions)
|
||||||
|
{
|
||||||
|
this.mProxyExclusions = exclusions;
|
||||||
|
}
|
||||||
|
|
||||||
public Integer getSplitTunneling()
|
public Integer getSplitTunneling()
|
||||||
{
|
{
|
||||||
return mSplitTunneling;
|
return mSplitTunneling;
|
||||||
|
|||||||
+3
@@ -50,6 +50,9 @@ public interface VpnProfileDataSource
|
|||||||
String KEY_IKE_PROPOSAL = "ike_proposal";
|
String KEY_IKE_PROPOSAL = "ike_proposal";
|
||||||
String KEY_ESP_PROPOSAL = "esp_proposal";
|
String KEY_ESP_PROPOSAL = "esp_proposal";
|
||||||
String KEY_DNS_SERVERS = "dns_servers";
|
String KEY_DNS_SERVERS = "dns_servers";
|
||||||
|
String KEY_PROXY_HOST = "proxy_host";
|
||||||
|
String KEY_PROXY_PORT = "proxy_port";
|
||||||
|
String KEY_PROXY_EXCLUSIONS = "proxy_exclusions";
|
||||||
String KEY_READ_ONLY = "read_only";
|
String KEY_READ_ONLY = "read_only";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
+6
@@ -151,6 +151,9 @@ public class VpnProfileSqlDataSource implements VpnProfileDataSource
|
|||||||
profile.setIkeProposal(cursor.getString(cursor.getColumnIndexOrThrow(KEY_IKE_PROPOSAL)));
|
profile.setIkeProposal(cursor.getString(cursor.getColumnIndexOrThrow(KEY_IKE_PROPOSAL)));
|
||||||
profile.setEspProposal(cursor.getString(cursor.getColumnIndexOrThrow(KEY_ESP_PROPOSAL)));
|
profile.setEspProposal(cursor.getString(cursor.getColumnIndexOrThrow(KEY_ESP_PROPOSAL)));
|
||||||
profile.setDnsServers(cursor.getString(cursor.getColumnIndexOrThrow(KEY_DNS_SERVERS)));
|
profile.setDnsServers(cursor.getString(cursor.getColumnIndexOrThrow(KEY_DNS_SERVERS)));
|
||||||
|
profile.setProxyHost(cursor.getString(cursor.getColumnIndexOrThrow(KEY_PROXY_HOST)));
|
||||||
|
profile.setProxyPort(getInt(cursor, cursor.getColumnIndexOrThrow(KEY_PROXY_PORT)));
|
||||||
|
profile.setProxyExclusions(cursor.getString(cursor.getColumnIndexOrThrow(KEY_PROXY_EXCLUSIONS)));
|
||||||
return profile;
|
return profile;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -179,6 +182,9 @@ public class VpnProfileSqlDataSource implements VpnProfileDataSource
|
|||||||
values.put(KEY_IKE_PROPOSAL, profile.getIkeProposal());
|
values.put(KEY_IKE_PROPOSAL, profile.getIkeProposal());
|
||||||
values.put(KEY_ESP_PROPOSAL, profile.getEspProposal());
|
values.put(KEY_ESP_PROPOSAL, profile.getEspProposal());
|
||||||
values.put(KEY_DNS_SERVERS, profile.getDnsServers());
|
values.put(KEY_DNS_SERVERS, profile.getDnsServers());
|
||||||
|
values.put(KEY_PROXY_HOST, profile.getProxyHost());
|
||||||
|
values.put(KEY_PROXY_PORT, profile.getProxyPort());
|
||||||
|
values.put(KEY_PROXY_EXCLUSIONS, profile.getProxyExclusions());
|
||||||
return values;
|
return values;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user