com.jcraft:jsch is not actively maintained anymore and lacks support
for modern public key algorithms such as rsa-sha2-256. It only
supports ssh-rsa which is disabled in up-to-date environments.
com.github.mwiede:jsch was created as a drop-in replacement which
works in modern environments [1].
Sources are taken from maven central [2]. The following files were
omitted, because they depend on additional 3rd-party libraries which
we do not have / do not need:
com/jcraft/jsch/JUnixSocketFactory.java
com/jcraft/jsch/Log4j2Logger.java
com/jcraft/jsch/PageantConnector.java
com/jcraft/jsch/Slf4jLogger.java
com/jcraft/jsch/SSHAgentConnector.java
com/jcraft/jsch/bc/*
com/jcraft/jsch/jgss/GSSContextKrb5.java
Fixes#1812.
[1] https://github.com/mwiede/jsch
[2] https://repo1.maven.org/maven2/com/github/mwiede/jsch/0.2.5/jsch-0.2.5-sources.jar
Somes files that are in .gitignore are still in the repository
This will remove them.
Commands used to do this:
git rm --cached -r . &&
git add . &&
git restore --staged .gitmodul
The jars in src/java/JavaFileStorage/libs are no more used since commit
a63663c30e
If this removes too many files, it means that .gitignore has to be fixed.
To find which rule removes which file run:
git check-ignore -v <file>
Especially, removing .idea/ completely might not be correct depending on ones
objective.
build.readme.md: mention how to build the native libs when on windows
Fix target name: rename target to keepass2android-app
*.BAT build-scripts: make script fail when a command fails
If a command was failing, the script continued to run and didn't fail.
The build errors could be hidden. This will make them apparent
build-java.bat:
- prefix call to gradlew.bat with 'call'
Otherwise, the batch file stops at the first gradlew call.
- don't build PluginQR as its output is not used, and the build fails with
newer Android SDK/NDK
build-xamarin.bat:
- use VS2019 path, download NuGet dependencies
- Call vcvarsall.bat only if not yet done
- build also APK
- Tested with VS Community 2019
- When calling it multiple times, the PATH env var contains duplicate values
and in the end will be too long, leading to vcvarsall.bat failing,
and hence build-xamarin.bat too
build-java.sh:
- don't unset ANDROID_NDK_HOME & ANDROID_NDK
Fixes build issues on github actions
- add missing KP2AKdbLibrary
- add executable bit to src/java/KP2AKdbLibrary/gradlew
- support build with msbuild & force use of xabuild when on linux
- don't build PluginQR as its output is not used, and the build fails with
newer Android SDK/NDK
build-xamarin.sh:
- put the config (Debug or Release) in a variable
build-apk.sh:
- fix project name to keepass2android-app.csproj
- support build with msbuild & force use of xabuild when on linux
Needed for github actions, and will also support building on macos with msbuild
- put the config (Debug or Release) in a variable
- Add missing /p:Configuration= /p:Platform=AnyCPU which is needed when building
nonet on macos (because nonet uses "Release")
remove PluginQR