setIncludedSubnets(getString(splitTunneling, VpnProfileDataSource.KEY_INCLUDED_SUBNETS));
}
+ final Bundle proxyServer = bundle.getBundle(VpnProfileDataSource.KEY_PROXY_SERVER);
+ if (proxyServer != null)
+ {
+ setProxyHost(getString(proxyServer, VpnProfileDataSource.KEY_PROXY_HOST));
+ setProxyPort(getInt(proxyServer, VpnProfileDataSource.KEY_PROXY_PORT, 1, 65_535));
+ setProxyExclusions(getString(proxyServer, VpnProfileDataSource.KEY_PROXY_EXCLUSIONS));
+ }
+
setSplitTunneling(splitFlags);
setFlags(flags);
}
String KEY_IKE_PROPOSAL = "ike_proposal";
String KEY_ESP_PROPOSAL = "esp_proposal";
String KEY_DNS_SERVERS = "dns_servers";
+ String KEY_PROXY_SERVER = "proxy_server";
String KEY_PROXY_HOST = "proxy_host";
String KEY_PROXY_PORT = "proxy_port";
String KEY_PROXY_EXCLUSIONS = "proxy_exclusions";
<string name="managed_config_split_tunneling_block_ipv6_title">@string/profile_split_tunnelingv6_title</string>
<string name="managed_config_split_tunneling_block_ipv6_description">Specifies whether to block IPv6 traffic that\'s not destined for the VPN. Forces all IPv6 traffic via VPN (traffic that does not match the negotiated traffic selector is then just dropped). Thus this is basically equivalent to including ::/0 in subnets</string>
+ <!-- Managed configuration, VPN profile, proxy server -->
+ <string name="managed_config_proxy_server_bundle_title">@string/profile_proxy_server_label</string>
+ <string name="managed_config_proxy_server_bundle_description">@string/profile_proxy_server_intro</string>
+ <string name="managed_config_proxy_host_title">@string/profile_proxy_host_label</string>
+ <string name="managed_config_proxy_host_description">@string/profile_proxy_host_hint</string>
+ <string name="managed_config_proxy_port_title">@string/profile_proxy_port_label</string>
+ <string name="managed_config_proxy_port_description">@string/profile_proxy_port_hint</string>
+ <string name="managed_config_proxy_exclusions_title">@string/profile_proxy_exclusions_label</string>
+ <string name="managed_config_proxy_exclusions_description">@string/profile_proxy_exclusions_hint</string>
</resources>
<string name="managed_config_split_tunneling_block_ipv6_title">@string/profile_split_tunnelingv6_title</string>
<string name="managed_config_split_tunneling_block_ipv6_description">Specifies whether to block IPv6 traffic that\'s not destined for the VPN. Forces all IPv6 traffic via VPN (traffic that does not match the negotiated traffic selector is then just dropped). Thus this is basically equivalent to including ::/0 in subnets</string>
+ <!-- Managed configuration, VPN profile, proxy server -->
+ <string name="managed_config_proxy_server_bundle_title">@string/profile_proxy_server_label</string>
+ <string name="managed_config_proxy_server_bundle_description">@string/profile_proxy_server_intro</string>
+ <string name="managed_config_proxy_host_title">@string/profile_proxy_host_label</string>
+ <string name="managed_config_proxy_host_description">@string/profile_proxy_host_hint</string>
+ <string name="managed_config_proxy_port_title">@string/profile_proxy_port_label</string>
+ <string name="managed_config_proxy_port_description">@string/profile_proxy_port_hint</string>
+ <string name="managed_config_proxy_exclusions_title">@string/profile_proxy_exclusions_label</string>
+ <string name="managed_config_proxy_exclusions_description">@string/profile_proxy_exclusions_hint</string>
</resources>
<string name="managed_config_split_tunneling_block_ipv6_title">@string/profile_split_tunnelingv6_title</string>
<string name="managed_config_split_tunneling_block_ipv6_description">Specifies whether to block IPv6 traffic that\'s not destined for the VPN. Forces all IPv6 traffic via VPN (traffic that does not match the negotiated traffic selector is then just dropped). Thus this is basically equivalent to including ::/0 in subnets</string>
+ <!-- Managed configuration, VPN profile, proxy server -->
+ <string name="managed_config_proxy_server_bundle_title">@string/profile_proxy_server_label</string>
+ <string name="managed_config_proxy_server_bundle_description">@string/profile_proxy_server_intro</string>
+ <string name="managed_config_proxy_host_title">@string/profile_proxy_host_label</string>
+ <string name="managed_config_proxy_host_description">@string/profile_proxy_host_hint</string>
+ <string name="managed_config_proxy_port_title">@string/profile_proxy_port_label</string>
+ <string name="managed_config_proxy_port_description">@string/profile_proxy_port_hint</string>
+ <string name="managed_config_proxy_exclusions_title">@string/profile_proxy_exclusions_label</string>
+ <string name="managed_config_proxy_exclusions_description">@string/profile_proxy_exclusions_hint</string>
</resources>
<string name="managed_config_split_tunneling_block_ipv6_title">@string/profile_split_tunnelingv6_title</string>
<string name="managed_config_split_tunneling_block_ipv6_description">Specifies whether to block IPv6 traffic that\'s not destined for the VPN. Forces all IPv6 traffic via VPN (traffic that does not match the negotiated traffic selector is then just dropped). Thus this is basically equivalent to including ::/0 in subnets</string>
+ <!-- Managed configuration, VPN profile, proxy server -->
+ <string name="managed_config_proxy_server_bundle_title">@string/profile_proxy_server_label</string>
+ <string name="managed_config_proxy_server_bundle_description">@string/profile_proxy_server_intro</string>
+ <string name="managed_config_proxy_host_title">@string/profile_proxy_host_label</string>
+ <string name="managed_config_proxy_host_description">@string/profile_proxy_host_hint</string>
+ <string name="managed_config_proxy_port_title">@string/profile_proxy_port_label</string>
+ <string name="managed_config_proxy_port_description">@string/profile_proxy_port_hint</string>
+ <string name="managed_config_proxy_exclusions_title">@string/profile_proxy_exclusions_label</string>
+ <string name="managed_config_proxy_exclusions_description">@string/profile_proxy_exclusions_hint</string>
</resources>
<string name="managed_config_split_tunneling_block_ipv6_title">@string/profile_split_tunnelingv6_title</string>
<string name="managed_config_split_tunneling_block_ipv6_description">Specifies whether to block IPv6 traffic that\'s not destined for the VPN. Forces all IPv6 traffic via VPN (traffic that does not match the negotiated traffic selector is then just dropped). Thus this is basically equivalent to including ::/0 in subnets</string>
+ <!-- Managed configuration, VPN profile, proxy server -->
+ <string name="managed_config_proxy_server_bundle_title">@string/profile_proxy_server_label</string>
+ <string name="managed_config_proxy_server_bundle_description">@string/profile_proxy_server_intro</string>
+ <string name="managed_config_proxy_host_title">@string/profile_proxy_host_label</string>
+ <string name="managed_config_proxy_host_description">@string/profile_proxy_host_hint</string>
+ <string name="managed_config_proxy_port_title">@string/profile_proxy_port_label</string>
+ <string name="managed_config_proxy_port_description">@string/profile_proxy_port_hint</string>
+ <string name="managed_config_proxy_exclusions_title">@string/profile_proxy_exclusions_label</string>
+ <string name="managed_config_proxy_exclusions_description">@string/profile_proxy_exclusions_hint</string>
</resources>
<string name="managed_config_split_tunneling_block_ipv6_title">@string/profile_split_tunnelingv6_title</string>
<string name="managed_config_split_tunneling_block_ipv6_description">Specifies whether to block IPv6 traffic that\'s not destined for the VPN. Forces all IPv6 traffic via VPN (traffic that does not match the negotiated traffic selector is then just dropped). Thus this is basically equivalent to including ::/0 in subnets</string>
+ <!-- Managed configuration, VPN profile, proxy server -->
+ <string name="managed_config_proxy_server_bundle_title">@string/profile_proxy_server_label</string>
+ <string name="managed_config_proxy_server_bundle_description">@string/profile_proxy_server_intro</string>
+ <string name="managed_config_proxy_host_title">@string/profile_proxy_host_label</string>
+ <string name="managed_config_proxy_host_description">@string/profile_proxy_host_hint</string>
+ <string name="managed_config_proxy_port_title">@string/profile_proxy_port_label</string>
+ <string name="managed_config_proxy_port_description">@string/profile_proxy_port_hint</string>
+ <string name="managed_config_proxy_exclusions_title">@string/profile_proxy_exclusions_label</string>
+ <string name="managed_config_proxy_exclusions_description">@string/profile_proxy_exclusions_hint</string>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<!--
+ Copyright (C) 2025 Tobias Brunner
Copyright (C) 2023 Relution GmbH
Copyright (C) secunet Security Networks AG
<string name="managed_config_split_tunneling_block_ipv6_title">@string/profile_split_tunnelingv6_title</string>
<string name="managed_config_split_tunneling_block_ipv6_description">Specifies whether to block IPv6 traffic that\'s not destined for the VPN. Forces all IPv6 traffic via VPN (traffic that does not match the negotiated traffic selector is then just dropped). Thus this is basically equivalent to including ::/0 in subnets</string>
+ <!-- Managed configuration, VPN profile, proxy server -->
+ <string name="managed_config_proxy_server_bundle_title">@string/profile_proxy_server_label</string>
+ <string name="managed_config_proxy_server_bundle_description">@string/profile_proxy_server_intro</string>
+ <string name="managed_config_proxy_host_title">@string/profile_proxy_host_label</string>
+ <string name="managed_config_proxy_host_description">@string/profile_proxy_host_hint</string>
+ <string name="managed_config_proxy_port_title">@string/profile_proxy_port_label</string>
+ <string name="managed_config_proxy_port_description">@string/profile_proxy_port_hint</string>
+ <string name="managed_config_proxy_exclusions_title">@string/profile_proxy_exclusions_label</string>
+ <string name="managed_config_proxy_exclusions_description">@string/profile_proxy_exclusions_hint</string>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<!--
+ Copyright (C) 2025 Tobias Brunner
Copyright (C) 2023 Relution GmbH
Copyright (C) secunet Security Networks AG
</restriction>
+ <restriction
+ android:description="@string/managed_config_proxy_server_bundle_description"
+ android:key="proxy_server"
+ android:restrictionType="bundle"
+ android:title="@string/managed_config_proxy_server_bundle_title">
+
+ <restriction
+ android:defaultValue=""
+ android:description="@string/managed_config_proxy_host_description"
+ android:key="proxy_host"
+ android:restrictionType="string"
+ android:title="@string/managed_config_proxy_host_title" />
+
+ <restriction
+ android:defaultValue="-1"
+ android:description="@string/managed_config_proxy_port_description"
+ android:key="proxy_port"
+ android:restrictionType="integer"
+ android:title="@string/managed_config_proxy_port_description" />
+
+ <restriction
+ android:defaultValue=""
+ android:description="@string/managed_config_proxy_exclusions_description"
+ android:key="proxy_exclusions"
+ android:restrictionType="string"
+ android:title="@string/managed_config_proxy_exclusions_title" />
+
+ </restriction>
+
</restriction>
</restriction>
</restrictions>