Sync from SUSE:SLFO:Main jsch revision dae59009e2d141eb1e0503bdf7981c48
This commit is contained in:
commit
4791584c5a
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
BIN
jsch-0.2.15.tar.gz
(Stored with Git LFS)
Normal file
BIN
jsch-0.2.15.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
306
jsch-build.xml
Normal file
306
jsch-build.xml
Normal file
@ -0,0 +1,306 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<project name="jsch" default="package" basedir=".">
|
||||||
|
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
<!-- Build environment properties -->
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
|
<property file="build.properties"/>
|
||||||
|
|
||||||
|
<property name="project.artifactId" value="jsch"/>
|
||||||
|
<property name="project.version" value="0.2.9"/>
|
||||||
|
|
||||||
|
<property name="spec.version" value="0.2"/>
|
||||||
|
<property name="versionWithoutMinus" value="${project.version}"/>
|
||||||
|
|
||||||
|
<property name="compiler.release" value="8"/>
|
||||||
|
<property name="compiler.source" value="1.${compiler.release}"/>
|
||||||
|
<property name="compiler.target" value="${compiler.source}"/>
|
||||||
|
|
||||||
|
<property name="build.finalName" value="jsch-${project.version}"/>
|
||||||
|
<property name="build.dir" value="target"/>
|
||||||
|
<property name="build.outputDir" value="${build.dir}/classes"/>
|
||||||
|
<property name="build.srcDir" value="src/main/java"/>
|
||||||
|
<property name="build.templateDir" value="src/main/java-templates"/>
|
||||||
|
<property name="build.genSrcDir" value="${build.dir}/generated-sources"/>
|
||||||
|
<property name="build.resourceDir" value="src/main/resources"/>
|
||||||
|
<property name="build.mrOutputDir" value="${build.outputDir}/META-INF/versions"/>
|
||||||
|
<property name="build.mrOutputDir.9" value="${build.mrOutputDir}/9"/>
|
||||||
|
<property name="build.mrSrcDir.9" value="src/main/java9"/>
|
||||||
|
<property name="build.mrOutputDir.10" value="${build.mrOutputDir}/10"/>
|
||||||
|
<property name="build.mrSrcDir.10" value="src/main/java10"/>
|
||||||
|
<property name="build.mrOutputDir.11" value="${build.mrOutputDir}/11"/>
|
||||||
|
<property name="build.mrSrcDir.11" value="src/main/java11"/>
|
||||||
|
<property name="build.mrOutputDir.15" value="${build.mrOutputDir}/15"/>
|
||||||
|
<property name="build.mrSrcDir.15" value="src/main/java15"/>
|
||||||
|
<property name="build.mrOutputDir.16" value="${build.mrOutputDir}/16"/>
|
||||||
|
<property name="build.mrSrcDir.16" value="src/main/java16"/>
|
||||||
|
<property name="reporting.outputDirectory" value="${build.dir}/site"/>
|
||||||
|
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
<!-- Defining classpaths -->
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
|
<path id="build.classpath">
|
||||||
|
<fileset dir="lib">
|
||||||
|
<include name="**/*.jar"/>
|
||||||
|
</fileset>
|
||||||
|
</path>
|
||||||
|
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
<!-- Cleaning up target -->
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
|
<target name="clean" description="Clean the output directory">
|
||||||
|
<delete dir="${build.dir}"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
<!-- Compilation targets -->
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
|
<condition property="build9">
|
||||||
|
<javaversion atleast="9"/>
|
||||||
|
</condition>
|
||||||
|
|
||||||
|
<condition property="build10">
|
||||||
|
<javaversion atleast="10"/>
|
||||||
|
</condition>
|
||||||
|
|
||||||
|
<condition property="build11">
|
||||||
|
<javaversion atleast="11"/>
|
||||||
|
</condition>
|
||||||
|
|
||||||
|
<condition property="build15">
|
||||||
|
<javaversion atleast="15"/>
|
||||||
|
</condition>
|
||||||
|
|
||||||
|
<condition property="build16">
|
||||||
|
<javaversion atleast="16"/>
|
||||||
|
</condition>
|
||||||
|
|
||||||
|
<target name="compile" description="Compile the code">
|
||||||
|
<echo>Java/JVM version: ${ant.java.version}</echo>
|
||||||
|
<mkdir dir="${build.genSrcDir}"/>
|
||||||
|
<copy todir="${build.genSrcDir}">
|
||||||
|
<fileset dir="${build.templateDir}"/>
|
||||||
|
<filterchain>
|
||||||
|
<expandproperties>
|
||||||
|
<propertyset>
|
||||||
|
<propertyref name="versionWithoutMinus"/>
|
||||||
|
</propertyset>
|
||||||
|
</expandproperties>
|
||||||
|
</filterchain>
|
||||||
|
</copy>
|
||||||
|
<mkdir dir="${build.outputDir}"/>
|
||||||
|
<javac destdir="${build.outputDir}"
|
||||||
|
nowarn="true"
|
||||||
|
debug="true"
|
||||||
|
optimize="false"
|
||||||
|
deprecation="true"
|
||||||
|
release="${compiler.release}"
|
||||||
|
verbose="false"
|
||||||
|
fork="false">
|
||||||
|
<src>
|
||||||
|
<pathelement location="${build.srcDir}"/>
|
||||||
|
<pathelement location="${build.genSrcDir}"/>
|
||||||
|
</src>
|
||||||
|
<classpath refid="build.classpath"/>
|
||||||
|
</javac>
|
||||||
|
<mkdir dir="${build.mrOutputDir}"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="compile9" description="Compile the overrides for Java 9+" if="build9">
|
||||||
|
<!-- Override classes for Java 9+ -->
|
||||||
|
<mkdir dir="${build.mrOutputDir.9}"/>
|
||||||
|
<javac destdir="${build.mrOutputDir.9}"
|
||||||
|
nowarn="true"
|
||||||
|
debug="true"
|
||||||
|
optimize="false"
|
||||||
|
deprecation="true"
|
||||||
|
source="${compiler.source}"
|
||||||
|
target="${compiler.target}"
|
||||||
|
verbose="false"
|
||||||
|
fork="false">
|
||||||
|
<src>
|
||||||
|
<pathelement location="${build.mrSrcDir.9}"/>
|
||||||
|
</src>
|
||||||
|
<exclude name="**/module-info.java"/>
|
||||||
|
<classpath>
|
||||||
|
<path refid="build.classpath"/>
|
||||||
|
<pathelement location="${build.outputDir}"/>
|
||||||
|
</classpath>
|
||||||
|
</javac>
|
||||||
|
<!-- Build module-info.class -->
|
||||||
|
<javac destdir="${build.mrOutputDir.9}"
|
||||||
|
nowarn="true"
|
||||||
|
debug="true"
|
||||||
|
optimize="false"
|
||||||
|
deprecation="true"
|
||||||
|
release="9"
|
||||||
|
verbose="false"
|
||||||
|
fork="false">
|
||||||
|
<src>
|
||||||
|
<pathelement location="${build.mrSrcDir.9}"/>
|
||||||
|
</src>
|
||||||
|
<include name="**/module-info.java"/>
|
||||||
|
<modulepath>
|
||||||
|
<path refid="build.classpath"/>
|
||||||
|
<pathelement location="${build.outputDir}"/>
|
||||||
|
</modulepath>
|
||||||
|
</javac>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="compile10" description="Compile the overrides for Java 10+" if="build10">
|
||||||
|
<!-- Override classes for Java 10+ -->
|
||||||
|
<mkdir dir="${build.mrOutputDir.10}"/>
|
||||||
|
<javac destdir="${build.mrOutputDir.10}"
|
||||||
|
nowarn="true"
|
||||||
|
debug="true"
|
||||||
|
optimize="false"
|
||||||
|
deprecation="true"
|
||||||
|
source="${compiler.source}"
|
||||||
|
target="${compiler.target}"
|
||||||
|
verbose="false"
|
||||||
|
fork="false">
|
||||||
|
<src>
|
||||||
|
<pathelement location="${build.mrSrcDir.10}"/>
|
||||||
|
</src>
|
||||||
|
<classpath>
|
||||||
|
<path refid="build.classpath"/>
|
||||||
|
<pathelement location="${build.outputDir}"/>
|
||||||
|
</classpath>
|
||||||
|
</javac>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="compile11" description="Compile the overrides for Java 11+" if="build11">
|
||||||
|
<!-- Override classes for Java 11+ -->
|
||||||
|
<mkdir dir="${build.mrOutputDir.11}"/>
|
||||||
|
<javac destdir="${build.mrOutputDir.11}"
|
||||||
|
nowarn="true"
|
||||||
|
debug="true"
|
||||||
|
optimize="false"
|
||||||
|
deprecation="true"
|
||||||
|
source="${compiler.source}"
|
||||||
|
target="${compiler.target}"
|
||||||
|
verbose="false"
|
||||||
|
fork="false">
|
||||||
|
<src>
|
||||||
|
<pathelement location="${build.mrSrcDir.11}"/>
|
||||||
|
</src>
|
||||||
|
<classpath>
|
||||||
|
<path refid="build.classpath"/>
|
||||||
|
<pathelement location="${build.outputDir}"/>
|
||||||
|
</classpath>
|
||||||
|
</javac>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="compile15" description="Compile the overrides for Java 15+" if="build15">
|
||||||
|
<!-- Override classes for Java 15+ -->
|
||||||
|
<mkdir dir="${build.mrOutputDir.15}"/>
|
||||||
|
<javac destdir="${build.mrOutputDir.15}"
|
||||||
|
nowarn="true"
|
||||||
|
debug="true"
|
||||||
|
optimize="false"
|
||||||
|
deprecation="true"
|
||||||
|
source="${compiler.source}"
|
||||||
|
target="${compiler.target}"
|
||||||
|
verbose="false"
|
||||||
|
fork="false">
|
||||||
|
<src>
|
||||||
|
<pathelement location="${build.mrSrcDir.15}"/>
|
||||||
|
</src>
|
||||||
|
<classpath>
|
||||||
|
<path refid="build.classpath"/>
|
||||||
|
<pathelement location="${build.outputDir}"/>
|
||||||
|
</classpath>
|
||||||
|
</javac>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="compile16" description="Compile the overrides for Java 16+" if="build16">
|
||||||
|
<!-- Override classes for Java 16+ -->
|
||||||
|
<mkdir dir="${build.mrOutputDir.16}"/>
|
||||||
|
<javac destdir="${build.mrOutputDir.16}"
|
||||||
|
nowarn="true"
|
||||||
|
debug="true"
|
||||||
|
optimize="false"
|
||||||
|
deprecation="true"
|
||||||
|
source="${compiler.source}"
|
||||||
|
target="${compiler.target}"
|
||||||
|
verbose="false"
|
||||||
|
fork="false">
|
||||||
|
<src>
|
||||||
|
<pathelement location="${build.mrSrcDir.16}"/>
|
||||||
|
</src>
|
||||||
|
<classpath>
|
||||||
|
<path refid="build.classpath"/>
|
||||||
|
<pathelement location="${build.outputDir}"/>
|
||||||
|
</classpath>
|
||||||
|
</javac>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
<!-- Javadoc target -->
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
|
<target name="javadoc" description="Generates the Javadoc of the application">
|
||||||
|
<javadoc sourcepath="${build.srcDir}"
|
||||||
|
destdir="${reporting.outputDirectory}/apidocs"
|
||||||
|
access="protected"
|
||||||
|
source="${compiler.source}"
|
||||||
|
verbose="false"
|
||||||
|
version="true"
|
||||||
|
use="true"
|
||||||
|
author="true"
|
||||||
|
splitindex="false"
|
||||||
|
nodeprecated="false"
|
||||||
|
nodeprecatedlist="false"
|
||||||
|
notree="false"
|
||||||
|
noindex="false"
|
||||||
|
nohelp="false"
|
||||||
|
nonavbar="false"
|
||||||
|
serialwarn="false"
|
||||||
|
charset="ISO-8859-1"
|
||||||
|
linksource="false"
|
||||||
|
breakiterator="false">
|
||||||
|
<classpath refid="build.classpath"/>
|
||||||
|
</javadoc>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
<!-- Package target -->
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
|
<target name="package" depends="compile,compile9,compile10,compile11,compile15,compile16" description="Package the application">
|
||||||
|
<jar jarfile="${build.dir}/${build.finalName}.jar"
|
||||||
|
compress="true"
|
||||||
|
index="false"
|
||||||
|
basedir="${build.outputDir}"
|
||||||
|
excludes="**/package.html">
|
||||||
|
<manifest>
|
||||||
|
<attribute name="Bundle-Description" value="JSch is a pure Java implementation of SSH2"/>
|
||||||
|
<attribute name="Bundle-License" value="https://github.com/mwiede/jsch/blob/master/LICENSE.JZlib.txt,https://github.com/mwiede/jsch/blob/master/LICENSE.jBCrypt.txt,https://github.com/mwiede/jsch/blob/master/LICENSE.txt"/>
|
||||||
|
<attribute name="Bundle-ManifestVersion" value="2"/>
|
||||||
|
<attribute name="Bundle-Name" value="JSch"/>
|
||||||
|
<attribute name="Bundle-SymbolicName" value="com.jcraft.jsch"/>
|
||||||
|
<attribute name="Bundle-Version" value="${project.version}"/>
|
||||||
|
<attribute name="Export-Package" value="com.jcraft.jsch;version="${project.version}""/>
|
||||||
|
<attribute name="Implementation-Title" value="JSch"/>
|
||||||
|
<attribute name="Implementation-Version" value="${project.version}"/>
|
||||||
|
<attribute name="Import-Package" value="com.sun.jna.platform.win32;resolution:=optional,com.sun.jna;resolution:=optional,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,org.bouncycastle.crypto.digests;resolution:=optional,org.bouncycastle.crypto.engines;resolution:=optional,org.bouncycastle.crypto.generators;resolution:=optional,org.bouncycastle.crypto.macs;resolution:=optional,org.bouncycastle.crypto.modes;resolution:=optional,org.bouncycastle.crypto.params;resolution:=optional,org.bouncycastle.crypto.signers;resolution:=optional,org.bouncycastle.crypto;resolution:=optional,org.ietf.jgss;resolution:=optional,org.slf4j;resolution:=optional"/>
|
||||||
|
<attribute name="Multi-Release" value="true"/>
|
||||||
|
<attribute name="Require-Capability" value="osgi.ee;filter:="(&(osgi.ee=JavaSE)(version=${compiler.target}))""/>
|
||||||
|
<attribute name="Specification-Title" value="JSch"/>
|
||||||
|
<attribute name="Specification-Version" value="${spec.version}"/>
|
||||||
|
</manifest>
|
||||||
|
</jar>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
<!-- A dummy target for the package named after the type it creates -->
|
||||||
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
|
<target name="jar" depends="package" description="Builds the jar for the application"/>
|
||||||
|
|
||||||
|
</project>
|
35
jsch-junixsocket.patch
Normal file
35
jsch-junixsocket.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
--- a/src/main/java/com/jcraft/jsch/SSHAgentConnector.java
|
||||||
|
+++ b/src/main/java/com/jcraft/jsch/SSHAgentConnector.java
|
||||||
|
@@ -93,21 +93,7 @@ public class SSHAgentConnector implements AgentConnector {
|
||||||
|
}
|
||||||
|
|
||||||
|
private static USocketFactory getUSocketFactory() throws AgentProxyException {
|
||||||
|
- try {
|
||||||
|
- return new UnixDomainSocketFactory();
|
||||||
|
- } catch (AgentProxyException e) {
|
||||||
|
- try {
|
||||||
|
- return new JUnixSocketFactory();
|
||||||
|
- } catch (NoClassDefFoundError ee) {
|
||||||
|
- AgentProxyException eee = new AgentProxyException("junixsocket library unavailable");
|
||||||
|
- eee.addSuppressed(e);
|
||||||
|
- eee.addSuppressed(ee);
|
||||||
|
- throw eee;
|
||||||
|
- } catch (AgentProxyException ee) {
|
||||||
|
- ee.addSuppressed(e);
|
||||||
|
- throw e;
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
+ return new UnixDomainSocketFactory();
|
||||||
|
}
|
||||||
|
|
||||||
|
private static Path getSshAuthSocket() throws AgentProxyException {
|
||||||
|
--- a/src/main/java9/module-info.java
|
||||||
|
+++ b/src/main/java9/module-info.java
|
||||||
|
@@ -6,7 +6,6 @@ module com.jcraft.jsch {
|
||||||
|
requires static org.apache.logging.log4j;
|
||||||
|
requires static org.slf4j;
|
||||||
|
requires static org.bouncycastle.provider;
|
||||||
|
- requires static org.newsclub.net.unix;
|
||||||
|
requires static com.sun.jna;
|
||||||
|
requires static com.sun.jna.platform;
|
||||||
|
}
|
10
jsch-log4j.patch
Normal file
10
jsch-log4j.patch
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
--- a/src/main/java9/module-info.java
|
||||||
|
+++ b/src/main/java9/module-info.java
|
||||||
|
@@ -3,7 +3,6 @@ module com.jcraft.jsch {
|
||||||
|
|
||||||
|
requires static java.security.jgss;
|
||||||
|
requires static java.logging;
|
||||||
|
- requires static org.apache.logging.log4j;
|
||||||
|
requires static org.slf4j;
|
||||||
|
requires static org.bouncycastle.provider;
|
||||||
|
requires static com.sun.jna;
|
425
jsch.changes
Normal file
425
jsch.changes
Normal file
@ -0,0 +1,425 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 20 12:47:08 UTC 2023 - Gus Kenion <gkenion@suse.com>
|
||||||
|
|
||||||
|
- Upgrade to version 0.2.15, which includes fix for SSH protocol
|
||||||
|
vulnerability (bsc#1218134, CVE-2023-48795)
|
||||||
|
* Changes in 0.2.15:
|
||||||
|
+ Address CVE-2023-48795 by adding support for new strict key
|
||||||
|
exchange extension
|
||||||
|
+ Add support for ext-info-in-auth@openssh.com extension
|
||||||
|
+ Introduce two new config options to control usage of the new
|
||||||
|
strict key exchange extension:
|
||||||
|
~ enable_strict_kex (set to yes by default)
|
||||||
|
~ require_strict_kex (set to no by default)
|
||||||
|
~ If either option (or both) is enabled, then JSch will
|
||||||
|
attempt to use the new strict key exchange extension.
|
||||||
|
~ If the require_strict_kex option is enabled and JSch detects
|
||||||
|
the server does not support it, then JSch will terminate the
|
||||||
|
connection and throw an exception.
|
||||||
|
~ If the require_strict_kex option is not enabled and JSch
|
||||||
|
detects the server does not support it, then JSch will
|
||||||
|
fallback and proceed with the connection without using the
|
||||||
|
new extension.
|
||||||
|
+ This gives users the ability to enable a strong security
|
||||||
|
posture if needed and avoid proceeding with connections to
|
||||||
|
potentially insecure servers.
|
||||||
|
* Changes in 0.2.14:
|
||||||
|
+ #450 use Socket.connect() with a timeout that has been
|
||||||
|
supported since Java 1.4 instead of using old method of
|
||||||
|
creating a separate thread and joining to that thread with
|
||||||
|
timeout
|
||||||
|
* Changes in 0.2.13:
|
||||||
|
+ #411 Add flush operation from Fix added is/jsch#39,
|
||||||
|
with new config option to allow disabling in case it causes
|
||||||
|
regressions.
|
||||||
|
+ #403 add a warning when Channel.getInputStream() or
|
||||||
|
Channel.getExtInputStream() is called after Channel.connect().
|
||||||
|
* Changes in 0.2.12:
|
||||||
|
+ Further refine previous fixes for windows line endings in PEM
|
||||||
|
keys
|
||||||
|
+ #392 replace call to BigInteger.intValueExact to remain
|
||||||
|
compatible with android api 30
|
||||||
|
+ Introduce JSchSessionDisconnectException to allow the
|
||||||
|
reasonCode to be retrieved without String parsing
|
||||||
|
+ Introduce specific JSchException for HostKey related failures
|
||||||
|
* Changes in 0.2.11:
|
||||||
|
+ update dependencies changes
|
||||||
|
+ #369 fix multi-line PEM key parsing to work with windows line
|
||||||
|
endings due to regression from previous fix for #362.
|
||||||
|
* Changes in 0.2.10:
|
||||||
|
+ Fix new Java 21 compiler warning: possible 'this' escape
|
||||||
|
before subclass is fully initialized
|
||||||
|
+ Tweak OSGi bundle manifest to allow Log4j 3
|
||||||
|
+ #362 fix PEM key parsing to work with windows line endings
|
||||||
|
+ #361 guard against UIKeyboardInteractive implementations that
|
||||||
|
include NULL elements in the String[] returned from
|
||||||
|
promptKeyboardInteractive()
|
||||||
|
+ Add a default implmentation of the deprecated decrypt() method
|
||||||
|
to the Identity interface that throws an
|
||||||
|
UnsupportedOperationException
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jun 3 11:03:46 UTC 2023 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Migrate from com.jcraft:jsch to com.github.mwiede:jsch fork
|
||||||
|
(bsc#1211955)
|
||||||
|
* Alias to the old artifact since the new one is drop-in
|
||||||
|
replacement
|
||||||
|
* Keep the old OSGi bundle symbolic name to avoid extensive
|
||||||
|
patching of eclipse stack
|
||||||
|
- Upgrade to version 0.2.9
|
||||||
|
* Changes of 0.2.9
|
||||||
|
+ various improvements, #295
|
||||||
|
~ #293 allow UserAuthNone to be extended.
|
||||||
|
~ Make JGSS module optional.
|
||||||
|
~ Tweak OSGi bundle manifest:
|
||||||
|
~ Avoid self-import.
|
||||||
|
~ Mark JGSS as optional.
|
||||||
|
~ Loosen import versions of dependencies.
|
||||||
|
~ Correctly adhere to the Multi-release JAR spec by ensuring
|
||||||
|
all public classes under versioned directories preside over
|
||||||
|
classes present in the top-level directory.
|
||||||
|
~ Eliminate stray System.err.println() calls.
|
||||||
|
~ Change PageantConnector to use JNA's built-in support for
|
||||||
|
User32.SendMessage().
|
||||||
|
+ Improve error handling in InputStream.close() for SFTP
|
||||||
|
channels, #331
|
||||||
|
* Changes of 0.2.8
|
||||||
|
+ activate sourcecode formatting, #247
|
||||||
|
+ build improvements, #279
|
||||||
|
+ #287 add algorithm type information to algorithm negotiation
|
||||||
|
logs, #290
|
||||||
|
+ wrap NoClassDefFoundError's for invalid private keys, #289 and
|
||||||
|
#290
|
||||||
|
* Changes of 0.2.7
|
||||||
|
+ #265 change buffer_margin computation to be dynamic based upon
|
||||||
|
the MAC to allow connections that advertise small maximum
|
||||||
|
packet sizes.
|
||||||
|
+ #266 fix PuTTY key parsing to work with unix line endings.
|
||||||
|
+ Add support for ECDSA and EdDSA type PuTTY keys.
|
||||||
|
+ #71 add support for PuTTY version 3 format keys.
|
||||||
|
~ Encrypted PuTTY version 3 format keys requires Bouncy
|
||||||
|
Castle (bcprov-jdk18on).
|
||||||
|
+ Eliminate KeyPairDeferred and instead change handling of
|
||||||
|
OpenSSH V1 type keys to be more like other KeyPair types.
|
||||||
|
+ Be more vigilant about clearing private key data.
|
||||||
|
+ Improve PKCS8 key handling and add support for PKCS5 2.1
|
||||||
|
encryption.
|
||||||
|
+ Add support for ECDSA type PKCS8 keys.
|
||||||
|
+ Add support for SCrypt type KDF for PKCS8 keys.
|
||||||
|
~ PKCS8 keys using SCrypt requires Bouncy Castle
|
||||||
|
(bcprov-jdk18on).
|
||||||
|
+ Add support for EdDSA type PKCS8 keys.
|
||||||
|
~ EdDSA type PKCS8 keys requires Bouncy Castle
|
||||||
|
(bcprov-jdk18on).
|
||||||
|
+ Attempt to authenticate using other signature algorithms
|
||||||
|
supported by the same public key.
|
||||||
|
~ Allow this behavior to be disabled via
|
||||||
|
try_additional_pubkey_algorithms config option.
|
||||||
|
° Some servers incorrectly respond with
|
||||||
|
SSH_MSG_USERAUTH_PK_OK to an initial auth query that they
|
||||||
|
don't actually support for RSA keys.
|
||||||
|
+ Add a new config option enable_pubkey_auth_query to allow
|
||||||
|
skipping auth queries and proceed directly to attempting
|
||||||
|
full SSH_MSG_USERAUTH_REQUEST's.
|
||||||
|
+ Add a new config option enable_auth_none to control whether
|
||||||
|
an initial auth request for the method none is sent to detect
|
||||||
|
all supported auth methods available on the server.
|
||||||
|
* Changes of 0.2.6
|
||||||
|
+ Include host alias instead of the real host in messages and
|
||||||
|
exceptions, #257
|
||||||
|
+ Fix missing keySize set when loading V1 RSA keys, #258
|
||||||
|
+ Enhancement to present KeyPair.getKeyTypeString() method, #259
|
||||||
|
* Changes of 0.2.5
|
||||||
|
+ Explictly free resources in Compression implementations, #241
|
||||||
|
+ Fix integration test failures on Apple Silicon by skipping
|
||||||
|
OpenSSH 7.4 tests, #227
|
||||||
|
+ generate osgi bundle manifest data for jar #248, #249
|
||||||
|
* Changes of 0.2.4
|
||||||
|
+ Improved excepton handling by @norrisjeremy in #200
|
||||||
|
* Changes of 0.2.3
|
||||||
|
+ #188 fix private key length checks for ssh-ed25519 and
|
||||||
|
ssh-ed448, #189
|
||||||
|
* Changes of 0.2.2
|
||||||
|
+ setup jdk for code-ql analysis, #151
|
||||||
|
+ misc improvements, #152
|
||||||
|
+ Fixing Issue #131, #134
|
||||||
|
+ Update link to bcrypt, #157
|
||||||
|
* Changes of 0.2.1
|
||||||
|
+ Allow to set a Logger per JSch-instance rather than a VM-wide
|
||||||
|
one, #128
|
||||||
|
+ Preliminary changes prior to Javadoc work, #126
|
||||||
|
+ remove check to allow setting any filename encoding with any
|
||||||
|
server version #137, #142
|
||||||
|
* Changes of 0.2.0
|
||||||
|
+ Disable RSA/SHA1 signature algorithm by default #75
|
||||||
|
+ Add basic Logger implementations that can be optionally
|
||||||
|
utilized with JSch.setLogger():
|
||||||
|
~ JulLogger, using java.util.logging.Logger
|
||||||
|
~ JplLogger, using Java 9's JEP 264
|
||||||
|
~ Log4j2Logger, using Apache Log4j 2
|
||||||
|
~ Slf4jLogger, using SLF4J
|
||||||
|
+ Fix client version to be compliant with RFC 4253 section 4.2
|
||||||
|
by not including minus sign characters #115
|
||||||
|
+ Add java.util.zip based compression implementation #114
|
||||||
|
~ This is based upon the CompressionJUZ implementation posted
|
||||||
|
to the JSch-users mailing list in 2012 by the original JSch
|
||||||
|
author
|
||||||
|
~ The existing JZlib implementation remains the default to
|
||||||
|
maintain strict RFC 4253 section 6.2 compliance
|
||||||
|
° To use the new implementation globally, execute
|
||||||
|
JSch.setConfig("zlib@openssh.com",
|
||||||
|
"com.jcraft.jsch.juz.Compression") +
|
||||||
|
JSch.setConfig("zlib", "com.jcraft.jsch.juz.Compression")
|
||||||
|
° To use the new implementation per session, execute
|
||||||
|
session.setConfig("zlib@openssh.com",
|
||||||
|
"com.jcraft.jsch.juz.Compression")
|
||||||
|
+ session.setConfig("zlib",
|
||||||
|
"com.jcraft.jsch.juz.Compression")
|
||||||
|
* Changes of 0.1.72
|
||||||
|
+ Switch chacha20-poly1305@openssh.com algorithm to a pure
|
||||||
|
Bouncy Castle based implementation
|
||||||
|
+ implement openssh config behavior to handle append, prepend
|
||||||
|
and removal of algorithms #104
|
||||||
|
* Changes of 0.1.71
|
||||||
|
+ Address #98 by restoring JSch.VERSION
|
||||||
|
* Changes of 0.1.70
|
||||||
|
+ Address #89 by fixing rare ECDSA signature validation issue
|
||||||
|
+ Address #93 by always setting the "want reply" flag for "env"
|
||||||
|
type channel requests to false
|
||||||
|
* Changes of 0.1.69
|
||||||
|
+ Address #83 by sending CR LF at the end of the identification
|
||||||
|
string
|
||||||
|
+ Fix earlier change for #76 that failed to correctly make the
|
||||||
|
"Host" keyword case-insensitive
|
||||||
|
+ Fix PageantConnector struct class visibility #86
|
||||||
|
* Changes of 0.1.68
|
||||||
|
+ Added support for the rijndael-cbc@lysator.liu.se algorithm
|
||||||
|
+ Added support for the hmac-ripemd160,
|
||||||
|
hmac-ripemd160@openssh.com and hmac-ripemd160-etm@openssh.com
|
||||||
|
algorithms using Bouncy Castle
|
||||||
|
+ Added support for various algorithms from RFC 4253 and
|
||||||
|
RFC 4344 using Bouncy Castle
|
||||||
|
~ cast128-cbc
|
||||||
|
~ cast128-ctr
|
||||||
|
~ twofish-cbc
|
||||||
|
~ twofish128-cbc
|
||||||
|
~ twofish128-ctr
|
||||||
|
~ twofish192-cbc
|
||||||
|
~ twofish192-ctr
|
||||||
|
~ twofish256-cbc
|
||||||
|
~ twofish256-ctr
|
||||||
|
+ Added support for the seed-cbc@ssh.com algorithm using Bouncy
|
||||||
|
Castle
|
||||||
|
* Changes of 0.1.67
|
||||||
|
+ Added support for the blowfish-ctr algorithm from RFC 4344
|
||||||
|
+ Fix bug where ext-info-c was incorrectly advertised during
|
||||||
|
rekeying
|
||||||
|
~ According to RFC 8308 section 2.1, ext-info-c should only
|
||||||
|
advertised during the first key exchange
|
||||||
|
+ Address #77 by attempting to add compatibility with older
|
||||||
|
Bouncy Castle releases
|
||||||
|
* Changes of 0.1.66
|
||||||
|
+ Added support for RFC 8308 extension negotiation and
|
||||||
|
server-sig-algs extension
|
||||||
|
~ This support is enabled by default, but can be controlled
|
||||||
|
via the enable_server_sig_algs config option (or
|
||||||
|
jsch.enable_server_sig_algs system property)
|
||||||
|
~ When enabled and a server-sig-algs message is received from
|
||||||
|
the server, the algorithms included by the server and also
|
||||||
|
present in the PubkeyAcceptedKeyTypes config option will be
|
||||||
|
attempted first when using publickey authentication
|
||||||
|
~ Additionally if the server is detected as OpenSSH version
|
||||||
|
7.4, the rsa-sha2-256 and rsa-sha2-512 algorithms will be
|
||||||
|
added to the received server-sig-algs as a workaround for
|
||||||
|
OpenSSH bug 2680
|
||||||
|
+ Added support for various algorithms supported by Tectia
|
||||||
|
(ssh.com):
|
||||||
|
~ diffie-hellman-group14-sha224@ssh.com
|
||||||
|
~ diffie-hellman-group14-sha256@ssh.com
|
||||||
|
~ diffie-hellman-group15-sha256@ssh.com
|
||||||
|
~ diffie-hellman-group15-sha384@ssh.com
|
||||||
|
~ diffie-hellman-group16-sha384@ssh.com
|
||||||
|
~ diffie-hellman-group16-sha512@ssh.com
|
||||||
|
~ diffie-hellman-group18-sha512@ssh.com
|
||||||
|
~ diffie-hellman-group-exchange-sha224@ssh.com
|
||||||
|
~ diffie-hellman-group-exchange-sha384@ssh.com
|
||||||
|
~ diffie-hellman-group-exchange-sha512@ssh.com
|
||||||
|
~ hmac-sha224@ssh.com
|
||||||
|
~ hmac-sha256@ssh.com
|
||||||
|
~ hmac-sha256-2@ssh.com
|
||||||
|
~ hmac-sha384@ssh.com
|
||||||
|
~ hmac-sha512@ssh.com
|
||||||
|
~ ssh-rsa-sha224@ssh.com
|
||||||
|
~ ssh-rsa-sha256@ssh.com
|
||||||
|
~ ssh-rsa-sha384@ssh.com
|
||||||
|
~ ssh-rsa-sha512@ssh.com
|
||||||
|
+ Added support for SHA224 to FingerprintHash
|
||||||
|
+ Fixing #52
|
||||||
|
+ Deprecate void setFilenameEncoding(String encoding) in favor
|
||||||
|
of void setFilenameEncoding(Charset encoding) in ChannelSftp
|
||||||
|
+ Added support for rsa-sha2-256 and rsa-rsa2-512 algorithms to
|
||||||
|
ChannelAgentForwarding
|
||||||
|
+ Address #65 by adding ssh-agent support derived from
|
||||||
|
jsch-agent-proxy
|
||||||
|
~ See examples/JSchWithAgentProxy.java for simple example
|
||||||
|
~ ssh-agent support requires either Java 16's JEP 380 or the
|
||||||
|
addition of junixsocket to classpath
|
||||||
|
~ Pageant support is untested and requires the addition of JNA
|
||||||
|
to classpath
|
||||||
|
+ Added support for the following algorithms with older Java
|
||||||
|
releases by using Bouncy Castle:
|
||||||
|
~ ssh-ed25519
|
||||||
|
~ ssh-ed448
|
||||||
|
~ curve25519-sha256
|
||||||
|
~ curve25519-sha256@libssh.org
|
||||||
|
~ curve448-sha512
|
||||||
|
~ chacha20-poly1305@openssh.com
|
||||||
|
* Changes of 0.1.65
|
||||||
|
+ Added system properties to allow manipulation of various
|
||||||
|
crypto algorithms used by default
|
||||||
|
+ Integrated JZlib, allowing use of zlib@openssh.com and zlib
|
||||||
|
compressions without the need to provide the JZlib jar-file
|
||||||
|
+ Modularized the jar-file for use with Java 9 or newer
|
||||||
|
+ Added runtime controls for the min/max/preferred sizes used
|
||||||
|
for diffie-hellman-group-exchange-sha256 and
|
||||||
|
diffie-hellman-group-exchange-sha1
|
||||||
|
+ Renamed PubkeyAcceptedKeyTypes config to
|
||||||
|
PubkeyAcceptedAlgorithms to match recent changes in OpenSSH
|
||||||
|
(PubkeyAcceptedKeyTypes is still accepted for backward
|
||||||
|
compatibility)
|
||||||
|
+ Reduced number of algorithms that are runtime checked by
|
||||||
|
default via CheckCiphers, CheckMacs, CheckKExes and
|
||||||
|
CheckSignatures to improve runtime performance
|
||||||
|
* Changes of 0.1.64
|
||||||
|
+ #55 bug fix
|
||||||
|
* Changes of 0.1.63
|
||||||
|
+ fix for #42
|
||||||
|
* Changes 0.1.62
|
||||||
|
+ #13 reject HostKey with some servers
|
||||||
|
+ #20 Include TestBCrypt.java unit test
|
||||||
|
+ #21 Misc cleanup
|
||||||
|
+ #27 Update Testcontainers to newest version to fix test
|
||||||
|
failures
|
||||||
|
+ #34 NPE with openssh v1 format
|
||||||
|
* Changes 0.1.61
|
||||||
|
+ Add support for chacha20-poly1305@openssh.com, ssh-ed25519,
|
||||||
|
ssh-ed448, curve448-sha512, diffie-hellman-group15-sha512
|
||||||
|
and diffie-hellman-group17-sha512.
|
||||||
|
This makes use of the new EdDSA feature added in Java 15's
|
||||||
|
JEP 339. #17
|
||||||
|
+ added integration test for public key authentication #19
|
||||||
|
* Changes of 0.1.60
|
||||||
|
+ support for openssh-v1-private-key format
|
||||||
|
+ Fix bug with AEAD ciphers when compression is used. #15
|
||||||
|
* Changes of 0.1.59
|
||||||
|
+ fixing issue #6 (originally from
|
||||||
|
https://sourceforge.net/p/jsch/mailman/message/36872566/)
|
||||||
|
* Changes of 0.1.58
|
||||||
|
+ adds support for more algorithms, see #4
|
||||||
|
* Changes of 0.1.57
|
||||||
|
+ support for rsa-sha2-256 and rsa-sha2-512. #1
|
||||||
|
* Changes of 0.1.56
|
||||||
|
+ support for direct-streamlocal@openssh.com
|
||||||
|
(see SocketForwardingL.java)
|
||||||
|
- Removed patches:
|
||||||
|
* jsch-0.1.54-sourcetarget.patch
|
||||||
|
* jsch-osgi-manifest.patch
|
||||||
|
+ both problems are handled differently in the new version
|
||||||
|
- Added patches:
|
||||||
|
* jsch-junixsocket.patch
|
||||||
|
+ disable building with dependency that we don't have
|
||||||
|
* jsch-log4j.patch
|
||||||
|
+ disable building with log4j support in order to avoid a
|
||||||
|
huge build cycle
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Mar 19 21:51:39 UTC 2022 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Modified patch:
|
||||||
|
* jsch-0.1.54-sourcetarget.patch
|
||||||
|
+ build with source/target levels 8
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Apr 7 13:56:09 UTC 2020 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Version 0.1.55
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Apr 7 13:52:31 UTC 2020 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Added patch:
|
||||||
|
* jsch-osgi-manifest.patch
|
||||||
|
+ create the osgi manifest during the ant build
|
||||||
|
+ replaces the MANIFEST.MF file
|
||||||
|
- Miscellaneous clean-up
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Sep 20 13:37:00 UTC 2019 - Fridrich Strba <fstrba@suse.com>
|
||||||
|
|
||||||
|
- Remove reference to the parent from pom file, since we are not
|
||||||
|
building with maven
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Sep 8 08:31:01 UTC 2017 - fstrba@suse.com
|
||||||
|
|
||||||
|
- Added patch:
|
||||||
|
* jsch-0.1.54-sourcetarget.patch
|
||||||
|
- Specify java source and target levels to 1.6, in order to
|
||||||
|
allow building with jdk9
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 9 10:59:34 UTC 2017 - tchvatal@suse.com
|
||||||
|
|
||||||
|
- Build with full java, does not compile with gcj
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 19 09:59:03 UTC 2017 - dziolkowski@suse.com
|
||||||
|
|
||||||
|
- New build dependency: javapackages-local
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Feb 12 21:45:09 UTC 2017 - guoyunhebrave@gmail.com
|
||||||
|
|
||||||
|
- Version 0.1.54
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 18 09:46:14 UTC 2015 - tchvatal@suse.com
|
||||||
|
|
||||||
|
- Fix build with new javapackages-tools
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Jun 17 15:49:57 UTC 2014 - tchvatal@suse.com
|
||||||
|
|
||||||
|
- Version bump to 0.1.51
|
||||||
|
- Cleanup with spec-cleaner
|
||||||
|
- Add maven and osgi things same as in Fedora.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Sep 9 11:06:06 UTC 2013 - tchvatal@suse.com
|
||||||
|
|
||||||
|
- Move from jpackage-utils to javapackage-tools
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon May 13 06:15:53 UTC 2013 - mvyskocil@suse.com
|
||||||
|
|
||||||
|
- update to 0.1.50
|
||||||
|
* fixes connection errors with "verify: false" when running on
|
||||||
|
Java 7u6 (and later).
|
||||||
|
* The OpenSSH config file and the key exchange method
|
||||||
|
"diffie-hellman-group-exchange-sha256" are now supported
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 16 08:39:25 UTC 2012 - mvyskocil@suse.com
|
||||||
|
|
||||||
|
- update to 0.1.49
|
||||||
|
* Putty's private key files support
|
||||||
|
* hmax-sha2-256 defined in RFC6668 is supported
|
||||||
|
* integration with jsch-agent-proxy
|
||||||
|
* and many bugfixes
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Apr 28 11:23:11 CEST 2009 - mvyskocil@suse.cz
|
||||||
|
|
||||||
|
- Initial SUSE packaging of version 0.1.40 (from jpp5)
|
||||||
|
|
116
jsch.spec
Normal file
116
jsch.spec
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
#
|
||||||
|
# spec file for package jsch
|
||||||
|
#
|
||||||
|
# Copyright (c) 2024 SUSE LLC
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
Name: jsch
|
||||||
|
Version: 0.2.15
|
||||||
|
Release: 0
|
||||||
|
Summary: Pure Java implementation of SSH2
|
||||||
|
License: BSD-3-Clause
|
||||||
|
Group: Development/Libraries/Java
|
||||||
|
URL: https://github.com/mwiede/jsch/
|
||||||
|
Source0: https://github.com/mwiede/%{name}/archive/refs/tags/%{name}-%{version}.tar.gz
|
||||||
|
Source1: %{name}-build.xml
|
||||||
|
Patch0: jsch-junixsocket.patch
|
||||||
|
Patch1: jsch-log4j.patch
|
||||||
|
BuildRequires: ant
|
||||||
|
BuildRequires: bouncycastle >= 1.77
|
||||||
|
BuildRequires: fdupes
|
||||||
|
# We need this for module-info.class
|
||||||
|
BuildRequires: java-devel >= 9
|
||||||
|
BuildRequires: javapackages-local >= 6
|
||||||
|
BuildRequires: jna
|
||||||
|
BuildRequires: jna-contrib
|
||||||
|
BuildRequires: slf4j
|
||||||
|
# The jar still works with Java 8
|
||||||
|
Requires: java >= 1.8
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description
|
||||||
|
JSch allows you to connect to an sshd server and use port forwarding,
|
||||||
|
X11 forwarding, file transfer, etc., and you can integrate its
|
||||||
|
functionality into your own Java programs.
|
||||||
|
|
||||||
|
%package javadoc
|
||||||
|
Summary: Pure Java implementation of SSH2
|
||||||
|
Group: Development/Libraries/Java
|
||||||
|
|
||||||
|
%description javadoc
|
||||||
|
JSch allows you to connect to an sshd server and use port forwarding,
|
||||||
|
X11 forwarding, file transfer, etc., and you can integrate its
|
||||||
|
functionality into your own Java programs.
|
||||||
|
|
||||||
|
%package demo
|
||||||
|
Summary: Pure Java implementation of SSH2
|
||||||
|
Group: Development/Libraries/Java
|
||||||
|
|
||||||
|
%description demo
|
||||||
|
JSch allows you to connect to an sshd server and use port forwarding,
|
||||||
|
X11 forwarding, file transfer, etc., and you can integrate its
|
||||||
|
functionality into your own Java programs.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -q -n %{name}-%{name}-%{version}
|
||||||
|
cp %{SOURCE1} build.xml
|
||||||
|
|
||||||
|
# We don't have junixsocket
|
||||||
|
%pom_remove_dep com.kohlschutter.junixsocket:
|
||||||
|
rm -f \
|
||||||
|
src/main/java/com/jcraft/jsch/JUnixSocketFactory.java
|
||||||
|
%patch0 -p1
|
||||||
|
|
||||||
|
# Do not depend on log4j
|
||||||
|
%pom_remove_dep org.apache.logging.log4j:
|
||||||
|
rm -f \
|
||||||
|
src/main/java/com/jcraft/jsch/Log4j2Logger.java \
|
||||||
|
src/test/java/com/jcraft/jsch/Log4j2LoggerTest.java
|
||||||
|
%patch1 -p1
|
||||||
|
|
||||||
|
%build
|
||||||
|
mkdir -p lib
|
||||||
|
build-jar-repository -s lib jna jna-platform slf4j/api bcprov
|
||||||
|
%{ant} jar javadoc
|
||||||
|
|
||||||
|
%install
|
||||||
|
# jars
|
||||||
|
install -Dpm 644 target/%{name}-*.jar %{buildroot}%{_javadir}/%{name}.jar
|
||||||
|
|
||||||
|
# pom
|
||||||
|
install -d -m 755 %{buildroot}%{_mavenpomdir}
|
||||||
|
%{mvn_install_pom} pom.xml %{buildroot}%{_mavenpomdir}/%{name}.pom
|
||||||
|
%add_maven_depmap %{name}.pom %{name}.jar -a com.jcraft:jsch
|
||||||
|
|
||||||
|
# javadoc
|
||||||
|
install -dm 755 %{buildroot}%{_javadocdir}/%{name}
|
||||||
|
cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}
|
||||||
|
%fdupes -s %{buildroot}%{_javadocdir}/%{name}
|
||||||
|
|
||||||
|
# examples
|
||||||
|
install -dm 755 %{buildroot}%{_datadir}/%{name}
|
||||||
|
cp -pr examples/* %{buildroot}%{_datadir}/%{name}
|
||||||
|
%fdupes -s %{buildroot}%{_datadir}/%{name}
|
||||||
|
|
||||||
|
%files -f .mfiles
|
||||||
|
%license LICENSE.txt
|
||||||
|
|
||||||
|
%files javadoc
|
||||||
|
%{_javadocdir}/%{name}
|
||||||
|
|
||||||
|
%files demo
|
||||||
|
%{_datadir}/%{name}
|
||||||
|
|
||||||
|
%changelog
|
Loading…
Reference in New Issue
Block a user