diff options
Diffstat (limited to 'src/de/blinkt/openvpn/core/OpenVpnManagementThread.java')
-rw-r--r-- | src/de/blinkt/openvpn/core/OpenVpnManagementThread.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/de/blinkt/openvpn/core/OpenVpnManagementThread.java b/src/de/blinkt/openvpn/core/OpenVpnManagementThread.java index 2fa407ca..5fa70cc8 100644 --- a/src/de/blinkt/openvpn/core/OpenVpnManagementThread.java +++ b/src/de/blinkt/openvpn/core/OpenVpnManagementThread.java @@ -379,9 +379,17 @@ public class OpenVpnManagementThread implements Runnable, OpenVPNManagement { mOpenVPNService.setDomain(extra);
} else if (needed.equals("ROUTE")) {
String[] routeparts = extra.split(" ");
- mOpenVPNService.addRoute(routeparts[0], routeparts[1]);
+
+ if(routeparts.length>3) {
+ assert(routeparts[3].equals("dev"));
+ mOpenVPNService.addRoute(routeparts[0], routeparts[1], routeparts[2], routeparts[4]);
+ } else {
+ mOpenVPNService.addRoute(routeparts[0], routeparts[1], routeparts[2], null);
+ }
+
} else if (needed.equals("ROUTE6")) {
- mOpenVPNService.addRoutev6(extra);
+ String[] routeparts = extra.split(" ");
+ mOpenVPNService.addRoutev6(routeparts[0],routeparts[1]);
} else if (needed.equals("IFCONFIG")) {
String[] ifconfigparts = extra.split(" ");
int mtu = Integer.parseInt(ifconfigparts[2]);
|