Skip to content

Commit 255aaf0

Browse files
Push testing stuffs for #1289 SFTP ED25519 KEYS
1 parent fe1e003 commit 255aaf0

File tree

5 files changed

+33
-6
lines changed

5 files changed

+33
-6
lines changed

build-extras.gradle

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
1+
android {
2+
packagingOptions {
3+
pickFirst 'META-INF/versions/9/OSGI-INF/MANIFEST.MF'
4+
}
5+
}
6+
17
configurations {
28
all {
39
exclude module: 'commons-logging'
10+
exclude group: 'org.bouncycastle', module: 'bcprov-jdk15on'
11+
exclude group: 'org.bouncycastle', module: 'bcpkix-jdk15on'
12+
exclude group: 'org.bouncycastle', module: 'bcpkix-jdk18on'
13+
exclude group: 'org.bouncycastle', module: 'bcprov-jdk18on'
414
}
515
}

package-lock.json

Lines changed: 9 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
"cordova-clipboard": {},
2626
"cordova-plugin-device": {},
2727
"cordova-plugin-file": {},
28-
"cordova-plugin-sftp": {},
2928
"cordova-plugin-server": {},
3029
"cordova-plugin-ftp": {},
3130
"cordova-plugin-sdcard": {},
@@ -37,7 +36,9 @@
3736
"cordova-plugin-buildinfo": {},
3837
"cordova-plugin-system": {},
3938
"cordova-plugin-browser": {},
40-
"com.foxdebug.acode.rk.exec.terminal": {}
39+
"com.foxdebug.acode.rk.exec.terminal": {},
40+
"com.foxdebug.acode.rk.exec.proot": {},
41+
"cordova-plugin-sftp": {}
4142
},
4243
"platforms": [
4344
"android"
@@ -62,6 +63,7 @@
6263
"@types/url-parse": "^1.4.11",
6364
"autoprefixer": "^10.4.21",
6465
"babel-loader": "^10.0.0",
66+
"com.foxdebug.acode.rk.exec.proot": "file:src/plugins/proot",
6567
"com.foxdebug.acode.rk.exec.terminal": "file:src/plugins/terminal",
6668
"cordova-android": "^14.0.1",
6769
"cordova-clipboard": "^1.3.0",

src/plugins/sftp/plugin.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,6 @@
2727
<framework src="commons-io:commons-io:2.11.0" />
2828
<framework src="com.sshtools:maverick-synergy-client:3.1.2" />
2929
<framework src="com.sshtools:maverick-bc:3.1.2" />
30+
<framework src="org.bouncycastle:bcprov-jdk15to18:1.79" />
31+
<framework src="org.bouncycastle:bcpkix-jdk15to18:1.79" />
3032
</plugin>

src/plugins/sftp/src/com/foxdebug/sftp/Sftp.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,16 @@
3333
import java.net.URLEncoder;
3434
import java.nio.channels.UnresolvedAddressException;
3535
import java.nio.charset.StandardCharsets;
36+
import java.security.Security;
3637
import org.apache.cordova.CallbackContext;
3738
import org.apache.cordova.CordovaInterface;
3839
import org.apache.cordova.CordovaPlugin;
3940
import org.apache.cordova.CordovaWebView;
4041
import org.json.JSONArray;
4142
import org.json.JSONException;
4243
import org.json.JSONObject;
44+
import java.util.Arrays;
45+
import org.bouncycastle.jce.provider.BouncyCastleProvider;
4346

4447
public class Sftp extends CordovaPlugin {
4548

@@ -178,8 +181,13 @@ public void run() {
178181
ContentResolver contentResolver = context.getContentResolver();
179182
InputStream in = contentResolver.openInputStream(uri);
180183

184+
com.sshtools.common.logger.Log.getDefaultContext().enableFile(com.sshtools.common.logger.Log.Level.DEBUG, new File("/storage/emulated/0/Android/data/com.foxdebug.acode/synergy.log"));
181185
JCEProvider.enableBouncyCastle(true);
182186

187+
Log.i(TAG, "All Available Security Providers (Security.getProviders() : " + Arrays.toString(Security.getProviders()));
188+
Log.i(TAG, "All Available Security Providers for ED25519 (Security.getProviders(\"KeyPairGenerator.Ed25519\"\") : " + Arrays.toString(Security.getProviders("KeyPairGenerator.Ed25519")));
189+
Log.i(TAG, "BC Security Provider Name (`Security.getProvider(BouncyCastleProvider.PROVIDER_NAME)`) : " + Security.getProvider(BouncyCastleProvider.PROVIDER_NAME));
190+
183191
SshKeyPair keyPair = null;
184192
try {
185193
keyPair = SshKeyUtils.getPrivateKey(in, passphrase);

0 commit comments

Comments
 (0)