summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Henneke <FabianHenneke@users.noreply.github.com>2020-10-08 17:54:18 +0200
committerHarsh Shandilya <me@msfjarvis.dev>2020-10-13 12:05:54 +0530
commit6139693d4fbfd7f43ffbf70a73048848ae41bf3a (patch)
treef65c1643d5a566f7bc259a949167e38f84ce2cc3
parentc70c1792f6ebb2e34fc4c7331c08b0de7e9129b4 (diff)
Temporarily work around SSHJ compatibility issues (#1142)
Using ECDSA either as a key exchange or a host key algorithm fails with SSHJ 0.30.0 on Android, but should again become possible in 0.31.0. While we wait for the release, demote ECDSA in the list of key algorithms (as it should still be available for public key auth) and remove it from the list of key exchange algorithms. (cherry picked from commit 0d2788ab54b7898c88e8dc03d88323d70781a795)
-rw-r--r--app/src/main/java/com/zeapo/pwdstore/git/sshj/SshjConfig.kt5
1 files changed, 1 insertions, 4 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/git/sshj/SshjConfig.kt b/app/src/main/java/com/zeapo/pwdstore/git/sshj/SshjConfig.kt
index 49a587f5..cd280db5 100644
--- a/app/src/main/java/com/zeapo/pwdstore/git/sshj/SshjConfig.kt
+++ b/app/src/main/java/com/zeapo/pwdstore/git/sshj/SshjConfig.kt
@@ -214,9 +214,6 @@ class SshjConfig : ConfigImpl() {
keyExchangeFactories = listOf(
Curve25519SHA256.Factory(),
FactoryLibSsh(),
- ECDHNistP.Factory521(),
- ECDHNistP.Factory384(),
- ECDHNistP.Factory256(),
DHGexSHA256.Factory(),
// Sends "ext-info-c" with the list of key exchange algorithms. This is needed to get
// rsa-sha2-* key types to work with some servers (e.g. GitHub).
@@ -230,10 +227,10 @@ class SshjConfig : ConfigImpl() {
KeyAlgorithms.EdDSA25519(),
KeyAlgorithms.RSASHA512(),
KeyAlgorithms.RSASHA256(),
+ KeyAlgorithms.SSHRSA(),
KeyAlgorithms.ECDSASHANistp521(),
KeyAlgorithms.ECDSASHANistp384(),
KeyAlgorithms.ECDSASHANistp256(),
- KeyAlgorithms.SSHRSA(),
).map {
OpenKeychainWrappedKeyAlgorithmFactory(it)
}