GoBackend: Add support for multiple address and dns as a comma separated list
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
parent
175f7e16dd
commit
44698bb000
@ -217,10 +217,17 @@ public final class GoBackend implements Backend {
|
|||||||
// Create the vpn tunnel with android API
|
// Create the vpn tunnel with android API
|
||||||
VpnService.Builder builder = vpnService.getBuilder();
|
VpnService.Builder builder = vpnService.getBuilder();
|
||||||
builder.setSession(tunnel.getName());
|
builder.setSession(tunnel.getName());
|
||||||
InetAddress address = InetAddress.getByName(config.getInterface().getAddress());
|
|
||||||
builder.addAddress(address.getHostAddress(), (address instanceof Inet4Address) ? 32 : 128);
|
for (final String addressString : config.getInterface().getAddress().split(" *, *")) {
|
||||||
if (config.getInterface().getDns() != null)
|
InetAddress address = InetAddress.getByName(addressString);
|
||||||
builder.addDnsServer(InetAddress.getByName(config.getInterface().getDns()).getHostAddress());
|
builder.addAddress(address.getHostAddress(), (address instanceof Inet4Address) ? 32 : 128);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (config.getInterface().getDns() != null) {
|
||||||
|
for (final String dnsString : config.getInterface().getDns().split(" *, *")) {
|
||||||
|
builder.addDnsServer(InetAddress.getByName(dnsString).getHostAddress());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for (final Peer peer : config.getPeers()) {
|
for (final Peer peer : config.getPeers()) {
|
||||||
if (peer.getAllowedIPs() != null) {
|
if (peer.getAllowedIPs() != null) {
|
||||||
|
Loading…
Reference in New Issue
Block a user