diff options
Diffstat (limited to 'dev-java/j2ssh')
-rw-r--r-- | dev-java/j2ssh/Manifest | 7 | ||||
-rw-r--r-- | dev-java/j2ssh/files/0.2.9-extras.patch | 201 | ||||
-rw-r--r-- | dev-java/j2ssh/files/0.2.9-no-versioned-jars.patch | 40 | ||||
-rw-r--r-- | dev-java/j2ssh/j2ssh-0.2.9.ebuild | 44 | ||||
-rw-r--r-- | dev-java/j2ssh/metadata.xml | 15 |
5 files changed, 307 insertions, 0 deletions
diff --git a/dev-java/j2ssh/Manifest b/dev-java/j2ssh/Manifest new file mode 100644 index 000000000000..bebdf34466a2 --- /dev/null +++ b/dev-java/j2ssh/Manifest @@ -0,0 +1,7 @@ +AUX 0.2.9-extras.patch 7597 SHA256 7b518b46d28d9c147599298b3fd242830462f9303b0b6808a64ba2e2a2dd6eab SHA512 e60f449e7cd39c1cc551a012c97f5b1cca229d6a08c06abfea6c47a0e2577d36887ce5e710dae2a1db5d1436b1eb0a13c5bdcef84555c678d3b54124fe6ce17d WHIRLPOOL cc31661e59521df26552d11ba749b55a9cbc9f689c53119a5ca71b97651d64cdac72bb86486022ef231e03ec998f1e200a20be8fc9bf43d5fee1a53cdc5234df +AUX 0.2.9-no-versioned-jars.patch 2187 SHA256 c81bbb752d2c211ae2d1d51e4c4c67039cef6cc7bcc747323e9176e0f7dd3e9a SHA512 5ef6e3f1f51a241f0a45810a561f4a77ddb2fe706e7ae4d0f6e36c28416435eed50cdec33debf7434f788c28f5b147987df3b1a12e59f8a0fade31183f57332f WHIRLPOOL ab7d29d5efa289d36e0f39bd541e42349e11776566bf24067fc322d6cb9cee7cccbbcecbc664469e4d95a0da6ca701a296f381bc23ddea13d67fb36ce7c97962 +DIST j2ssh-0.2.9-src.tar.gz 2182523 SHA256 9fc60e295eb7124ff2cb77a76ae6936b6583ad7dac742765cdb3f34ece70d0c9 SHA512 d7720766dcf50205089fa22d026721dc25de5def1d451fcb6680832017becc3fc8d76c2ffb5ed2e2190e08c864da24d2544515478956f78ac4d8cf4126cab6e8 WHIRLPOOL 3e039e95255f91e47c8a52ee1b4f83b8f667e1232d4649c5aeb29c9076fe92d66110bd6ec11187ed4bcf2f3987e83041d38cc1e4774bcb6b3e26adfc6feb4cec +EBUILD j2ssh-0.2.9.ebuild 1015 SHA256 0e5c58f238b1fd20cefc8ea565ed68955aa432f936f477000d48a5e6d73be894 SHA512 0fc3e1efd4406c9d54d481dad30a7fa7b852452955059ee2b4e570fcc6fb1d93b0a734613e968825b36f43929ee749fe1493cc0e3be5c0e22e94bc51a77c7547 WHIRLPOOL 3ac4c99b493413dcb7b77751535305b4818360af03ca5beddc548b10902bcc25d14c485d9824a53490b02360fec9fdcdfd9605f3a502bdd5082787320bb47884 +MISC ChangeLog 2598 SHA256 5a191e59a291dda80e2ca5e2b4b13ad781515a49efc9920baf76cffa8eca5bab SHA512 e62ee3320e1303496b5822028add8dac456c6ee28a5423716e5f10e4d9946fb13b921a473ecf462d01afa0140193b18e4988c7d2d826fd93186b7d1a4b8a33ac WHIRLPOOL 5da6e467210aecf5a7a89d78b6664c2520ed382bd13434352fc96b22d1482327efcb201cca8c4908973c955127f040298d2a50847301c0f8e8b5c88c28ae4328 +MISC ChangeLog-2015 553 SHA256 e44e89229fa0b7d371352ecd3c7026b2709216bc8211ca7117004bb1bf597515 SHA512 71b7d3731297b91c414efe081f9da4c97a9eff4d3d54f3f331c3ac555f03eacc913ea41b01aeb0ddd374ad966b2c7f7b04a7e16b41985b91e9105263bbd3fc90 WHIRLPOOL 4fbef735d61d28f6ce3bf8527fd5c3bfc472f422600aa8cb2a2c3c272451084cc39b9749f33d8803ed18cfb5da2688aae1aa615cd2be09a0bfc1f55390aae98b +MISC metadata.xml 494 SHA256 ba04a3f9ca9d4bf85d4b998a5f98388151300a08e5fbe0e8c1d50777d0095d80 SHA512 dc20b956e35a2a5098710ed97d00cd15979a6da488b4618cd262803f093e9281fdeb00f5a828cc0026c7b809c186d10f77683498b2380ed8c46d519696308b18 WHIRLPOOL f527feb1111b8114e56434c67a2142f4822235be0c75763ded3a0d7de9861b95bb9e45f22e4ac41400c1ee98843977ab4f1c689e80920a412cf9ed3a10cb8cf3 diff --git a/dev-java/j2ssh/files/0.2.9-extras.patch b/dev-java/j2ssh/files/0.2.9-extras.patch new file mode 100644 index 000000000000..d958cba19b97 --- /dev/null +++ b/dev-java/j2ssh/files/0.2.9-extras.patch @@ -0,0 +1,201 @@ +diff -ur j2ssh-0.2.9/src/com/sshtools/j2ssh/io/ByteArrayReader.java j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/io/ByteArrayReader.java +--- j2ssh-0.2.9/src/com/sshtools/j2ssh/io/ByteArrayReader.java 2007-04-28 21:02:54.000000000 +0200 ++++ j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/io/ByteArrayReader.java 2008-01-18 19:27:38.000000000 +0100 +@@ -118,7 +118,13 @@ + byte[] chars = new byte[(int) len]; + System.arraycopy(data, start + 4, chars, 0, len); + +- return new String(chars); ++ try { ++ return new String(chars, "UTF-8"); ++ } ++ catch(java.io.UnsupportedEncodingException e) { ++ // This should never happen, UTF-8 is necessarily supported. ++ return new String(chars); ++ } + } + + /** +@@ -163,6 +169,12 @@ + byte[] raw = new byte[(int) len]; + read(raw); + +- return new String(raw); ++ try { ++ return new String(raw, "UTF-8"); ++ } ++ catch(java.io.UnsupportedEncodingException e) { ++ // This should never happen, UTF-8 is necessarily supported. ++ return new String(raw); ++ } + } + } +diff -ur j2ssh-0.2.9/src/com/sshtools/j2ssh/io/ByteArrayWriter.java j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/io/ByteArrayWriter.java +--- j2ssh-0.2.9/src/com/sshtools/j2ssh/io/ByteArrayWriter.java 2007-04-29 10:54:48.000000000 +0200 ++++ j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/io/ByteArrayWriter.java 2008-01-18 19:30:36.000000000 +0100 +@@ -190,15 +190,15 @@ + if (str == null) { + writeInt(0); + } else { +- /* +- writeInt(str.length()); +- // don't use US-ASCII by default! +- write(str.getBytes()); +- */ +- // patch as of version 0.2.9 +- // for UTF-8 length of string is not necessarily +- // equal to number of bytes +- byte[] strBytes = str.getBytes(); ++ byte[] strBytes; ++ try { ++ strBytes = str.getBytes("UTF-8"); ++ } ++ catch(java.io.UnsupportedEncodingException e) { ++ // This should never happen, UTF-8 is necessarily supported. ++ strBytes = str.getBytes(); ++ } ++ + writeInt(strBytes.length); + write(strBytes); + } +diff -ur j2ssh-0.2.9/src/com/sshtools/j2ssh/sftp/SftpFileInputStream.java j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/sftp/SftpFileInputStream.java +--- j2ssh-0.2.9/src/com/sshtools/j2ssh/sftp/SftpFileInputStream.java 2007-04-28 21:02:54.000000000 +0200 ++++ j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/sftp/SftpFileInputStream.java 2008-01-18 19:26:58.000000000 +0100 +@@ -38,7 +38,7 @@ + */ + public class SftpFileInputStream extends InputStream { + SftpFile file; +- UnsignedInteger64 position = new UnsignedInteger64("0"); ++ UnsignedInteger64 position; + + /** + * Creates a new SftpFileInputStream object. +@@ -48,16 +48,47 @@ + * @throws IOException + */ + public SftpFileInputStream(SftpFile file) throws IOException { ++ this(file, 0); ++ } ++ ++ /** ++ * Creates a new SftpFileInputStream object and sets the file offset to the specified position. ++ * ++ * @param file ++ * @param position the initial file offset, must be >=0 ++ * ++ * @throws IOException ++ */ ++ public SftpFileInputStream(SftpFile file, long position) throws IOException { + if (file.getHandle() == null) { + throw new IOException("The file does not have a valid handle!"); + } +- ++ + if (file.getSFTPSubsystem() == null) { +- throw new IOException( +- "The file is not attached to an SFTP subsystem!"); ++ throw new IOException("The file is not attached to an SFTP subsystem!"); + } +- ++ + this.file = file; ++ this.position = new UnsignedInteger64(""+position); ++ } ++ ++ /** ++ * Returns the current offset within the file. ++ * ++ * @return the current offset within the file ++ */ ++ public long getPosition() { ++ return position.longValue(); ++ } ++ ++ /** ++ * Sets the current file offset to the given position. ++ * Subsequent calls to read methods will start reading data at this position. ++ * ++ * @param position the new offset, must be >=0 ++ */ ++ public void setPosition(long position) { ++ this.position = new UnsignedInteger64(""+position); + } + + /** +diff -ur j2ssh-0.2.9/src/com/sshtools/j2ssh/sftp/SftpFileOutputStream.java j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/sftp/SftpFileOutputStream.java +--- j2ssh-0.2.9/src/com/sshtools/j2ssh/sftp/SftpFileOutputStream.java 2007-04-28 21:02:54.000000000 +0200 ++++ j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/sftp/SftpFileOutputStream.java 2008-01-18 19:08:55.000000000 +0100 +@@ -38,7 +38,7 @@ + */ + public class SftpFileOutputStream extends OutputStream { + SftpFile file; +- UnsignedInteger64 position = new UnsignedInteger64("0"); ++ UnsignedInteger64 position; + + /** + * Creates a new SftpFileOutputStream object. +@@ -48,6 +48,18 @@ + * @throws IOException + */ + public SftpFileOutputStream(SftpFile file) throws IOException { ++ this(file, 0); ++ } ++ ++ /** ++ * Creates a new SftpFileOutputStream object and sets the file offset to the specified position. ++ * ++ * @param file ++ * @param position the initial file offset, must be >=0 ++ * ++ * @throws IOException ++ */ ++ public SftpFileOutputStream(SftpFile file, long position) throws IOException { + if (file.getHandle() == null) { + throw new IOException("The file does not have a valid handle!"); + } +@@ -58,6 +70,7 @@ + } + + this.file = file; ++ this.position = new UnsignedInteger64(""+position); + } + + /** +diff -ur j2ssh-0.2.9/src/com/sshtools/j2ssh/sftp/SftpSubsystemClient.java j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/sftp/SftpSubsystemClient.java +--- j2ssh-0.2.9/src/com/sshtools/j2ssh/sftp/SftpSubsystemClient.java 2007-04-28 21:02:54.000000000 +0200 ++++ j2ssh-0.2.9_patched/src/com/sshtools/j2ssh/sftp/SftpSubsystemClient.java 2008-01-21 17:48:06.000000000 +0100 +@@ -231,16 +231,28 @@ + } + + /** ++ * Creates the directory with the specified path. The default permissions for the directory are 0755 ("rwxr-xr-x"). + * ++ * @param path the path to the directory to create ++ * @throws IOException if an error occurs ++ */ ++ public synchronized void makeDirectory(String path) throws IOException { ++ makeDirectory(path, 0755); // default to 755 octal (493 decimal): "rwxr-xr-x" ++ } ++ ++ /** ++ * Creates the directory with the specified path and file permissions. + * +- * @param path +- * +- * @throws IOException ++ * @param path the path to the directory to create ++ * @param permissions the file permissions of the new directory ++ * @throws IOException if an error occurs + */ +- public synchronized void makeDirectory(String path) +- throws IOException { ++ public synchronized void makeDirectory(String path, int permissions) throws IOException { + UnsignedInteger32 requestId = nextRequestId(); +- SshFxpMkdir msg = new SshFxpMkdir(requestId, path, new FileAttributes()); ++ FileAttributes attrs = new FileAttributes(); ++ attrs.setPermissions(new UnsignedInteger32(permissions)); ++ ++ SshFxpMkdir msg = new SshFxpMkdir(requestId, path, attrs); + sendMessage(msg); + getOKRequestStatus(requestId); + } diff --git a/dev-java/j2ssh/files/0.2.9-no-versioned-jars.patch b/dev-java/j2ssh/files/0.2.9-no-versioned-jars.patch new file mode 100644 index 000000000000..26d7672a3414 --- /dev/null +++ b/dev-java/j2ssh/files/0.2.9-no-versioned-jars.patch @@ -0,0 +1,40 @@ +diff --git a/j2ssh/build.xml b/j2ssh/build.xml +index 2c867ee..7ba5814 100644 +--- a/j2ssh/build.xml ++++ b/j2ssh/build.xml +@@ -52,7 +52,7 @@ + <mkdir dir="${build.dist.lib}"/> + + <!-- Build the J2SSH library files --> +- <jar jarfile="${build.dist.lib}/j2ssh-core-${j2ssh.version.major}.${j2ssh.version.minor}.${j2ssh.version.build}.jar" basedir="${build.dist.classes}"> ++ <jar jarfile="${build.dist.lib}/j2ssh-core.jar" basedir="${build.dist.classes}"> + <include name="com/sshtools/j2ssh/**/*.class"/> + <manifest> + <attribute name="Product-Version" +@@ -60,7 +60,7 @@ + </manifest> + </jar> + +- <jar jarfile="${build.dist.lib}/j2ssh-ant-${j2ssh.version.major}.${j2ssh.version.minor}.${j2ssh.version.build}.jar" basedir="${build.dist.classes}"> ++ <jar jarfile="${build.dist.lib}/j2ssh-ant.jar" basedir="${build.dist.classes}"> + <include name="com/sshtools/ant/**/*.class"/> + <manifest> + <attribute name="Product-Version" +@@ -68,7 +68,7 @@ + </manifest> + </jar> + +- <jar jarfile="${build.dist.lib}/j2ssh-dameon-${j2ssh.version.major}.${j2ssh.version.minor}.${j2ssh.version.build}.jar" basedir="${build.dist.classes}"> ++ <jar jarfile="${build.dist.lib}/j2ssh-dameon.jar" basedir="${build.dist.classes}"> + <include name="com/sshtools/daemon/**/*.class"/> + <exclude name="com/sshtools/daemon/windows/**/*.*"/> + <exclude name="com/sshtools/daemon/linux/**/*.*"/> +@@ -78,7 +78,7 @@ + </manifest> + </jar> + +- <jar jarfile="${build.dist.lib}/j2ssh-common-${j2ssh.version.major}.${j2ssh.version.minor}.${j2ssh.version.build}.jar" basedir="${build.dist.classes}"> ++ <jar jarfile="${build.dist.lib}/j2ssh-common.jar" basedir="${build.dist.classes}"> + <include name="com/sshtools/common/**/*.class"/> + <include name="com/sshtools/common/**/*.png"/> + <include name="com/sshtools/common/**/*.gif"/> diff --git a/dev-java/j2ssh/j2ssh-0.2.9.ebuild b/dev-java/j2ssh/j2ssh-0.2.9.ebuild new file mode 100644 index 000000000000..7d4dd4ea6d5a --- /dev/null +++ b/dev-java/j2ssh/j2ssh-0.2.9.ebuild @@ -0,0 +1,44 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +JAVA_PKG_IUSE="source doc examples" + +inherit eutils java-pkg-2 java-ant-2 + +DESCRIPTION="Java implementation of the SSH protocol" +HOMEPAGE="https://sourceforge.net/projects/sshtools/ http://www.sshtools.com/" +SRC_URI="mirror://sourceforge/sshtools/${P}-src.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +CDEPEND="dev-java/commons-logging:0 + dev-java/ant-core:0" + +RDEPEND="${CDEPEND} + >=virtual/jre-1.5" +DEPEND="${CDEPEND} + >=virtual/jdk-1.5" + +S="${WORKDIR}/${PN}" + +JAVA_ANT_REWRITE_CLASSPATH="yes" +EANT_BUILD_TARGET="build" +EANT_GENTOO_CLASSPATH="commons-logging,ant-core" + +src_prepare() { + epatch "${FILESDIR}/${PV}-no-versioned-jars.patch" + epatch "${FILESDIR}/${PV}-extras.patch" +} + +src_install() { + java-pkg_dojar "${S}"/dist/lib/*.jar + + use doc && java-pkg_dojavadoc docs/ + use source && java-pkg_dosrc "${S}"/src/com + use examples && java-pkg_doexamples "${S}"/examples/ +} diff --git a/dev-java/j2ssh/metadata.xml b/dev-java/j2ssh/metadata.xml new file mode 100644 index 000000000000..6b55c013d0a1 --- /dev/null +++ b/dev-java/j2ssh/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>java@gentoo.org</email> + <name>Java</name> + </maintainer> + <longdescription> + SSHTools is a suite of Java SSH applications providing a Java SSH API, + SSH Terminal, SSH secured VNC client, SFTP client and SSH Daemon. + </longdescription> + <upstream> + <remote-id type="sourceforge">sshtools</remote-id> + </upstream> +</pkgmetadata> |