summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/blinkt/openvpn/core/OpenVpnManagementThread.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/de/blinkt/openvpn/core/OpenVpnManagementThread.java')
-rw-r--r--app/src/main/java/de/blinkt/openvpn/core/OpenVpnManagementThread.java19
1 files changed, 13 insertions, 6 deletions
diff --git a/app/src/main/java/de/blinkt/openvpn/core/OpenVpnManagementThread.java b/app/src/main/java/de/blinkt/openvpn/core/OpenVpnManagementThread.java
index 492e8913..1124c5b7 100644
--- a/app/src/main/java/de/blinkt/openvpn/core/OpenVpnManagementThread.java
+++ b/app/src/main/java/de/blinkt/openvpn/core/OpenVpnManagementThread.java
@@ -260,7 +260,10 @@ public class OpenVpnManagementThread implements Runnable, OpenVPNManagement {
processLogMessage(argument);
break;
case "RSA_SIGN":
- processSignCommand(argument);
+ processSignCommand(argument, false);
+ break;
+ case "ECDSA_SIGN":
+ processSignCommand(argument, true);
break;
default:
VpnStatus.logWarning("MGMT: Got unrecognized command" + command);
@@ -606,7 +609,7 @@ public class OpenVpnManagementThread implements Runnable, OpenVPNManagement {
if (mWaitingForRelease)
releaseHold();
else if (samenetwork)
- managmentCommand("network-change\n");
+ managmentCommand("network-change samenetwork\n");
else
managmentCommand("network-change\n");
}
@@ -631,16 +634,20 @@ public class OpenVpnManagementThread implements Runnable, OpenVPNManagement {
releaseHold();
}
- private void processSignCommand(String b64data) {
+ private void processSignCommand(String b64data, boolean ecdsa) {
+
+ String signed_string = mProfile.getSignedData(b64data, ecdsa);
+ String signcmd = "rsa-sig\n";
+ if (ecdsa)
+ signcmd = "ecdsa-sig\n";
- String signed_string = mProfile.getSignedData(b64data);
if (signed_string == null) {
- managmentCommand("rsa-sig\n");
+ managmentCommand(signcmd);
managmentCommand("\nEND\n");
stopOpenVPN();
return;
}
- managmentCommand("rsa-sig\n");
+ managmentCommand(signcmd);
managmentCommand(signed_string);
managmentCommand("\nEND\n");
}