diff --git a/src/main/java/com/hierynomus/sshj/common/KeyDecryptionFailedException.java b/src/main/java/com/hierynomus/sshj/common/KeyDecryptionFailedException.java index a889a73d0..436d3218d 100644 --- a/src/main/java/com/hierynomus/sshj/common/KeyDecryptionFailedException.java +++ b/src/main/java/com/hierynomus/sshj/common/KeyDecryptionFailedException.java @@ -23,6 +23,7 @@ * Thrown when a key file could not be decrypted correctly, e.g. if its checkInts differed in the case of an OpenSSH * key file. */ +@SuppressWarnings("serial") public class KeyDecryptionFailedException extends IOException { public static final String MESSAGE = "Decryption of the key failed. A supplied passphrase may be incorrect."; diff --git a/src/main/java/com/hierynomus/sshj/signature/Ed25519PublicKey.java b/src/main/java/com/hierynomus/sshj/signature/Ed25519PublicKey.java index 7bad0d3c5..f26b580c1 100644 --- a/src/main/java/com/hierynomus/sshj/signature/Ed25519PublicKey.java +++ b/src/main/java/com/hierynomus/sshj/signature/Ed25519PublicKey.java @@ -27,6 +27,7 @@ * Our own extension of the EdDSAPublicKey that comes from ECC-25519, as that class does not implement equality. * The code uses the equality of the keys as an indicator whether they're the same during host key verification. */ +@SuppressWarnings("serial") public class Ed25519PublicKey extends EdDSAPublicKey { public Ed25519PublicKey(EdDSAPublicKeySpec spec) { diff --git a/src/main/java/net/schmizz/sshj/common/Base64.java b/src/main/java/net/schmizz/sshj/common/Base64.java index 1778b2017..02a7e401c 100644 --- a/src/main/java/net/schmizz/sshj/common/Base64.java +++ b/src/main/java/net/schmizz/sshj/common/Base64.java @@ -1,5 +1,6 @@ package net.schmizz.sshj.common; + /** *

Encodes and decodes to and from Base64 notation.

*

Homepage: http://iharder.net/base64.

@@ -1359,7 +1360,7 @@ public static Object decodeToObject( @Override public Class resolveClass(java.io.ObjectStreamClass streamClass) throws java.io.IOException, ClassNotFoundException { - Class c = Class.forName(streamClass.getName(), false, loader); + Class c = Class.forName(streamClass.getName(), false, loader); if( c == null ){ return super.resolveClass(streamClass); } else { diff --git a/src/main/java/net/schmizz/sshj/common/Buffer.java b/src/main/java/net/schmizz/sshj/common/Buffer.java index 604f8160b..169a83490 100644 --- a/src/main/java/net/schmizz/sshj/common/Buffer.java +++ b/src/main/java/net/schmizz/sshj/common/Buffer.java @@ -21,6 +21,7 @@ import java.security.PublicKey; import java.util.Arrays; +@SuppressWarnings("serial") public class Buffer> { public static class BufferException @@ -55,7 +56,7 @@ public PlainBuffer(int size) { public static final int DEFAULT_SIZE = 256; /** The maximum valid size of buffer (i.e. biggest power of two that can be represented as an int - 2^30) */ - public static final int MAX_SIZE = (1 << 30); + public static final int MAX_SIZE = (1 << 30); /** Maximum size of a uint64 */ public static final BigInteger MAX_UINT64_VALUE = BigInteger.ONE @@ -66,7 +67,7 @@ protected static int getNextPowerOf2(int i) { int j = 1; while (j < i) { j <<= 1; - if (j <= 0) throw new IllegalArgumentException("Cannot get next power of 2; "+i+" is too large"); + if (j <= 0) throw new IllegalArgumentException("Cannot get next power of 2; "+i+" is too large"); } return j; } diff --git a/src/main/java/net/schmizz/sshj/common/SSHException.java b/src/main/java/net/schmizz/sshj/common/SSHException.java index 9f910e068..efdcad679 100644 --- a/src/main/java/net/schmizz/sshj/common/SSHException.java +++ b/src/main/java/net/schmizz/sshj/common/SSHException.java @@ -23,6 +23,7 @@ * Most exceptions in the {@code net.schmizz.sshj} package are instances of this class. An {@link SSHException} is * itself an {@link IOException} and can be caught like that if this level of granularity is not desired. */ +@SuppressWarnings("serial") public class SSHException extends IOException { diff --git a/src/main/java/net/schmizz/sshj/common/SSHRuntimeException.java b/src/main/java/net/schmizz/sshj/common/SSHRuntimeException.java index b9afd48ff..aaf54f91a 100644 --- a/src/main/java/net/schmizz/sshj/common/SSHRuntimeException.java +++ b/src/main/java/net/schmizz/sshj/common/SSHRuntimeException.java @@ -16,6 +16,7 @@ package net.schmizz.sshj.common; /** Represents unrecoverable exceptions in the {@code net.schmizz.sshj} package. */ +@SuppressWarnings("serial") public class SSHRuntimeException extends RuntimeException { diff --git a/src/main/java/net/schmizz/sshj/common/SecurityUtils.java b/src/main/java/net/schmizz/sshj/common/SecurityUtils.java index eb4bab023..8406c3a6f 100644 --- a/src/main/java/net/schmizz/sshj/common/SecurityUtils.java +++ b/src/main/java/net/schmizz/sshj/common/SecurityUtils.java @@ -36,6 +36,8 @@ import static java.lang.String.format; +import java.lang.reflect.InvocationTargetException; + /** * Static utility method relating to security facilities. */ @@ -53,8 +55,8 @@ public class SecurityUtils { public static final String SPONGY_CASTLE = "SC"; /* - * Security provider identifier. null = default JCE - */ + * Security provider identifier. null = default JCE + */ private static String securityProvider = null; // relate to BC registration (or SpongyCastle on Android) @@ -65,13 +67,17 @@ public static boolean registerSecurityProvider(String providerClassName) { Provider provider = null; try { Class name = Class.forName(providerClassName); - provider = (Provider) name.newInstance(); + provider = (Provider) name.getDeclaredConstructor().newInstance(); } catch (ClassNotFoundException e) { LOG.info("Security Provider class '{}' not found", providerClassName); } catch (InstantiationException e) { LOG.info("Security Provider class '{}' could not be created", providerClassName); } catch (IllegalAccessException e) { LOG.info("Security Provider class '{}' could not be accessed", providerClassName); + } catch (InvocationTargetException e) { + LOG.info("Security Provider class '{}' could not be created", providerClassName); + } catch (NoSuchMethodException e) { + LOG.info("Security Provider class '{}' does not have a no-args constructor", providerClassName); } if (provider == null) { diff --git a/src/main/java/net/schmizz/sshj/signature/SignatureECDSA.java b/src/main/java/net/schmizz/sshj/signature/SignatureECDSA.java index 86d2c770a..6194ab4d5 100644 --- a/src/main/java/net/schmizz/sshj/signature/SignatureECDSA.java +++ b/src/main/java/net/schmizz/sshj/signature/SignatureECDSA.java @@ -21,6 +21,7 @@ import com.hierynomus.asn1.types.constructed.ASN1Sequence; import com.hierynomus.asn1.types.primitive.ASN1Integer; import net.schmizz.sshj.common.Buffer; +import net.schmizz.sshj.common.IOUtils; import net.schmizz.sshj.common.KeyType; import net.schmizz.sshj.common.SSHRuntimeException; @@ -91,16 +92,18 @@ public SignatureECDSA(String algorithm, String keyTypeName) { public byte[] encode(byte[] sig) { ByteArrayInputStream bais = new ByteArrayInputStream(sig); com.hierynomus.asn1.ASN1InputStream asn1InputStream = new com.hierynomus.asn1.ASN1InputStream(new DERDecoder(), bais); - - ASN1Sequence sequence = asn1InputStream.readObject(); - ASN1Integer r = (ASN1Integer) sequence.get(0); - ASN1Integer s = (ASN1Integer) sequence.get(1); - - Buffer.PlainBuffer buf = new Buffer.PlainBuffer(); - buf.putMPInt(r.getValue()); - buf.putMPInt(s.getValue()); - - return buf.getCompactData(); + try { + ASN1Sequence sequence = asn1InputStream.readObject(); + ASN1Integer r = (ASN1Integer) sequence.get(0); + ASN1Integer s = (ASN1Integer) sequence.get(1); + Buffer.PlainBuffer buf = new Buffer.PlainBuffer(); + buf.putMPInt(r.getValue()); + buf.putMPInt(s.getValue()); + + return buf.getCompactData(); + } finally { + IOUtils.closeQuietly(asn1InputStream, bais); + } } @Override @@ -123,16 +126,19 @@ private byte[] asnEncode(byte[] sigBlob) throws IOException { BigInteger r = sigbuf.readMPInt(); BigInteger s = sigbuf.readMPInt(); + List vector = new ArrayList(); vector.add(new ASN1Integer(r)); vector.add(new ASN1Integer(s)); ByteArrayOutputStream baos = new ByteArrayOutputStream(); com.hierynomus.asn1.ASN1OutputStream asn1OutputStream = new com.hierynomus.asn1.ASN1OutputStream(new DEREncoder(), baos); - - asn1OutputStream.writeObject(new ASN1Sequence(vector)); - asn1OutputStream.flush(); - + try { + asn1OutputStream.writeObject(new ASN1Sequence(vector)); + asn1OutputStream.flush(); + } finally { + IOUtils.closeQuietly(asn1OutputStream); + } return baos.toByteArray(); } } diff --git a/src/main/java/net/schmizz/sshj/transport/kex/AbstractDHG.java b/src/main/java/net/schmizz/sshj/transport/kex/AbstractDHG.java index ed307e4ad..c494d53b4 100644 --- a/src/main/java/net/schmizz/sshj/transport/kex/AbstractDHG.java +++ b/src/main/java/net/schmizz/sshj/transport/kex/AbstractDHG.java @@ -29,8 +29,7 @@ * Base class for DHG key exchange algorithms. Implementations will only have to configure the required data on the * {@link DH} class in the */ -public abstract class AbstractDHG extends AbstractDH - implements KeyExchange { +public abstract class AbstractDHG extends AbstractDH { private final Logger log = LoggerFactory.getLogger(getClass()); diff --git a/src/main/java/net/schmizz/sshj/transport/kex/AbstractDHGex.java b/src/main/java/net/schmizz/sshj/transport/kex/AbstractDHGex.java index 4c6bb8ec0..cbf3122c9 100644 --- a/src/main/java/net/schmizz/sshj/transport/kex/AbstractDHGex.java +++ b/src/main/java/net/schmizz/sshj/transport/kex/AbstractDHGex.java @@ -57,11 +57,12 @@ public boolean next(Message msg, SSHPacket buffer) throws GeneralSecurityExcepti return parseGexGroup(buffer); case KEX_DH_GEX_REPLY: return parseGexReply(buffer); + default: + throw new TransportException("Unexpected message " + msg); } } catch (Buffer.BufferException be) { throw new TransportException(be); } - throw new TransportException("Unexpected message " + msg); } private boolean parseGexReply(SSHPacket buffer) throws Buffer.BufferException, GeneralSecurityException, TransportException { diff --git a/src/test/java/com/hierynomus/sshj/transport/DisconnectionTest.java b/src/test/java/com/hierynomus/sshj/transport/DisconnectionTest.java index fce39036d..b4522e040 100644 --- a/src/test/java/com/hierynomus/sshj/transport/DisconnectionTest.java +++ b/src/test/java/com/hierynomus/sshj/transport/DisconnectionTest.java @@ -16,17 +16,14 @@ package com.hierynomus.sshj.transport; import com.hierynomus.sshj.test.SshFixture; -import net.schmizz.sshj.DefaultConfig; import net.schmizz.sshj.SSHClient; import net.schmizz.sshj.common.DisconnectReason; import net.schmizz.sshj.connection.channel.direct.Session; import net.schmizz.sshj.transport.DisconnectListener; import net.schmizz.sshj.transport.TransportException; -import net.schmizz.sshj.transport.verification.PromiscuousVerifier; import org.junit.Before; import org.junit.Rule; import org.junit.Test; -import org.junit.experimental.theories.suppliers.TestedOn; import java.io.IOException; import java.util.concurrent.TimeUnit; diff --git a/src/test/java/com/hierynomus/sshj/transport/GcmCipherDecryptSshPacketTest.java b/src/test/java/com/hierynomus/sshj/transport/GcmCipherDecryptSshPacketTest.java index 985d7688f..b0ed52c54 100644 --- a/src/test/java/com/hierynomus/sshj/transport/GcmCipherDecryptSshPacketTest.java +++ b/src/test/java/com/hierynomus/sshj/transport/GcmCipherDecryptSshPacketTest.java @@ -26,8 +26,6 @@ import org.junit.experimental.theories.Theory; import org.junit.runner.RunWith; -import java.io.File; -import java.io.FileInputStream; import java.security.Security; import java.util.Arrays; diff --git a/src/test/java/com/hierynomus/sshj/transport/kex/KeyExchangeTest.java b/src/test/java/com/hierynomus/sshj/transport/kex/KeyExchangeTest.java index 1a9e7a513..ec8c6eb4d 100644 --- a/src/test/java/com/hierynomus/sshj/transport/kex/KeyExchangeTest.java +++ b/src/test/java/com/hierynomus/sshj/transport/kex/KeyExchangeTest.java @@ -19,7 +19,6 @@ import net.schmizz.sshj.Config; import net.schmizz.sshj.DefaultConfig; import net.schmizz.sshj.common.Factory; -import net.schmizz.sshj.transport.kex.Curve25519SHA256; import net.schmizz.sshj.transport.kex.DHGexSHA1; import net.schmizz.sshj.transport.kex.DHGexSHA256; import net.schmizz.sshj.transport.kex.ECDHNistP; diff --git a/src/test/java/net/schmizz/sshj/LoadsOfConnects.java b/src/test/java/net/schmizz/sshj/LoadsOfConnects.java index 67adf3044..4b1364af5 100644 --- a/src/test/java/net/schmizz/sshj/LoadsOfConnects.java +++ b/src/test/java/net/schmizz/sshj/LoadsOfConnects.java @@ -20,8 +20,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.IOException; - import static org.junit.Assert.fail; public class LoadsOfConnects { @@ -46,4 +44,4 @@ public void loadsOfConnects() { } -} \ No newline at end of file +} diff --git a/src/test/java/net/schmizz/sshj/sftp/SFTPClientTest.java b/src/test/java/net/schmizz/sshj/sftp/SFTPClientTest.java index 61888ddf1..7e932558f 100644 --- a/src/test/java/net/schmizz/sshj/sftp/SFTPClientTest.java +++ b/src/test/java/net/schmizz/sshj/sftp/SFTPClientTest.java @@ -57,7 +57,11 @@ public void setRemoteWorkingDirectory() throws IOException { @Test public void doesNotTryToCreateDirectoryTwiceWhenPathHasTrailingSeparator() throws Exception { SFTPClient client = new SFTPClient(sftpEngine); - client.mkdirs("/folder/directory/"); - verify(sftpEngine, times(1)).makeDir("/folder/directory"); + try { + client.mkdirs("/folder/directory/"); + verify(sftpEngine, times(1)).makeDir("/folder/directory"); + } finally { + client.close(); + } } } diff --git a/src/test/java/net/schmizz/sshj/transport/mac/BaseMacTest.java b/src/test/java/net/schmizz/sshj/transport/mac/BaseMacTest.java index c0e6e1bef..6ebab0b94 100644 --- a/src/test/java/net/schmizz/sshj/transport/mac/BaseMacTest.java +++ b/src/test/java/net/schmizz/sshj/transport/mac/BaseMacTest.java @@ -21,6 +21,8 @@ import java.nio.charset.Charset; +import com.hierynomus.sshj.transport.mac.Macs; + import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import static org.junit.Assert.fail; @@ -33,7 +35,7 @@ public class BaseMacTest { @Test public void testResizeTooBigKeys() { - BaseMAC hmac = new HMACSHA1(); + BaseMAC hmac = Macs.HMACSHA1().create(); hmac.init((KEY + "foo").getBytes(CHARSET)); hmac.update(PLAIN_TEXT); assertThat(Hex.toHexString(hmac.doFinal()), is(EXPECTED_HMAC)); @@ -82,8 +84,8 @@ public void testUpdateWithDoFinalWithResultBuffer() { } private BaseMAC initHmac() { - BaseMAC hmac = new HMACSHA1(); + BaseMAC hmac = Macs.HMACSHA1().create(); hmac.init(KEY.getBytes(CHARSET)); return hmac; } -} \ No newline at end of file +} diff --git a/src/test/java/net/schmizz/sshj/transport/mac/HMACMD596Test.java b/src/test/java/net/schmizz/sshj/transport/mac/HMACMD596Test.java index abb494766..492deaee2 100644 --- a/src/test/java/net/schmizz/sshj/transport/mac/HMACMD596Test.java +++ b/src/test/java/net/schmizz/sshj/transport/mac/HMACMD596Test.java @@ -20,6 +20,8 @@ import java.nio.charset.Charset; +import com.hierynomus.sshj.transport.mac.Macs; + import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; @@ -30,29 +32,29 @@ public class HMACMD596Test { @Test public void testUpdateWithDoFinal() { - HMACMD596 hmac = initHmac(); + BaseMAC hmac = initHmac(); hmac.update(PLAIN_TEXT); assertThat(Hex.toHexString(hmac.doFinal()), is(EXPECTED_HMAC)); } @Test public void testDoFinalWithInput() { - HMACMD596 hmac = initHmac(); + BaseMAC hmac = initHmac(); assertThat(Hex.toHexString(hmac.doFinal(PLAIN_TEXT)), is(EXPECTED_HMAC)); } @Test public void testUpdateWithDoFinalWithResultBuffer() { - HMACMD596 hmac = initHmac(); + BaseMAC hmac = initHmac(); byte[] resultBuf = new byte[12]; hmac.update(PLAIN_TEXT); hmac.doFinal(resultBuf, 0); assertThat(Hex.toHexString(resultBuf), is(EXPECTED_HMAC)); } - private HMACMD596 initHmac() { - HMACMD596 hmac = new HMACMD596(); + private BaseMAC initHmac() { + BaseMAC hmac = Macs.HMACMD596().create(); hmac.init("ohBahfei6pee5dai".getBytes(CHARSET)); return hmac; } diff --git a/src/test/java/net/schmizz/sshj/transport/mac/HMACMD5Test.java b/src/test/java/net/schmizz/sshj/transport/mac/HMACMD5Test.java index adb35f9f8..c9ef60c42 100644 --- a/src/test/java/net/schmizz/sshj/transport/mac/HMACMD5Test.java +++ b/src/test/java/net/schmizz/sshj/transport/mac/HMACMD5Test.java @@ -20,6 +20,8 @@ import java.nio.charset.Charset; +import com.hierynomus.sshj.transport.mac.Macs; + import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; @@ -30,28 +32,28 @@ public class HMACMD5Test { @Test public void testUpdateWithDoFinal() { - HMACMD5 hmac = initHmac(); + BaseMAC hmac = initHmac(); hmac.update(PLAIN_TEXT); assertThat(Hex.toHexString(hmac.doFinal()), is(EXPECTED_HMAC)); } @Test public void testDoFinalWithInput() { - HMACMD5 hmac = initHmac(); + BaseMAC hmac = initHmac(); assertThat(Hex.toHexString(hmac.doFinal(PLAIN_TEXT)), is(EXPECTED_HMAC)); } @Test public void testUpdateWithDoFinalWithResultBuffer() { - HMACMD5 hmac = initHmac(); + BaseMAC hmac = initHmac(); byte[] resultBuf = new byte[16]; hmac.update(PLAIN_TEXT); hmac.doFinal(resultBuf, 0); assertThat(Hex.toHexString(resultBuf), is(EXPECTED_HMAC)); } - private HMACMD5 initHmac() { - HMACMD5 hmac = new HMACMD5(); + private BaseMAC initHmac() { + BaseMAC hmac = Macs.HMACMD5().create(); hmac.init("ohBahfei6pee5dai".getBytes(CHARSET)); return hmac; } diff --git a/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA196Test.java b/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA196Test.java index 8c3d56232..507735d3e 100644 --- a/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA196Test.java +++ b/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA196Test.java @@ -20,6 +20,8 @@ import java.nio.charset.Charset; +import com.hierynomus.sshj.transport.mac.Macs; + import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; @@ -30,28 +32,28 @@ public class HMACSHA196Test { @Test public void testUpdateWithDoFinal() { - HMACSHA196 hmac = initHmac(); + BaseMAC hmac = initHmac(); hmac.update(PLAIN_TEXT); assertThat(Hex.toHexString(hmac.doFinal()), is(EXPECTED_HMAC)); } @Test public void testDoFinalWithInput() { - HMACSHA196 hmac = initHmac(); + BaseMAC hmac = initHmac(); assertThat(Hex.toHexString(hmac.doFinal(PLAIN_TEXT)), is(EXPECTED_HMAC)); } @Test public void testUpdateWithDoFinalWithResultBuffer() { - HMACSHA196 hmac = initHmac(); + BaseMAC hmac = initHmac(); byte[] resultBuf = new byte[12]; hmac.update(PLAIN_TEXT); hmac.doFinal(resultBuf, 0); assertThat(Hex.toHexString(resultBuf), is(EXPECTED_HMAC)); } - private HMACSHA196 initHmac() { - HMACSHA196 hmac = new HMACSHA196(); + private BaseMAC initHmac() { + BaseMAC hmac = Macs.HMACSHA196().create(); hmac.init("et1Quo5ooCie6theel8i".getBytes(CHARSET)); return hmac; } diff --git a/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA1Test.java b/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA1Test.java index 515aa1615..0204b052b 100644 --- a/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA1Test.java +++ b/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA1Test.java @@ -20,6 +20,8 @@ import java.nio.charset.Charset; +import com.hierynomus.sshj.transport.mac.Macs; + import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; @@ -30,29 +32,29 @@ public class HMACSHA1Test { @Test public void testUpdateWithDoFinal() { - HMACSHA1 hmac = initHmac(); + BaseMAC hmac = initHmac(); hmac.update(PLAIN_TEXT); assertThat(Hex.toHexString(hmac.doFinal()), is(EXPECTED_HMAC)); } @Test public void testDoFinalWithInput() { - HMACSHA1 hmac = initHmac(); + BaseMAC hmac = initHmac(); assertThat(Hex.toHexString(hmac.doFinal(PLAIN_TEXT)), is(EXPECTED_HMAC)); } @Test public void testUpdateWithDoFinalWithResultBuffer() { - HMACSHA1 hmac = initHmac(); + BaseMAC hmac = initHmac(); byte[] resultBuf = new byte[20]; hmac.update(PLAIN_TEXT); hmac.doFinal(resultBuf, 0); assertThat(Hex.toHexString(resultBuf), is(EXPECTED_HMAC)); } - private HMACSHA1 initHmac() { - HMACSHA1 hmac = new HMACSHA1(); + private BaseMAC initHmac() { + BaseMAC hmac = Macs.HMACSHA1().create(); hmac.init("et1Quo5ooCie6theel8i".getBytes(CHARSET)); return hmac; } -} \ No newline at end of file +} diff --git a/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA2256Test.java b/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA2256Test.java index 04c999485..dca3a7a91 100644 --- a/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA2256Test.java +++ b/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA2256Test.java @@ -20,6 +20,8 @@ import java.nio.charset.Charset; +import com.hierynomus.sshj.transport.mac.Macs; + import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; @@ -30,29 +32,29 @@ public class HMACSHA2256Test { @Test public void testUpdateWithDoFinal() { - HMACSHA2256 hmac = initHmac(); + BaseMAC hmac = initHmac(); hmac.update(PLAIN_TEXT); assertThat(Hex.toHexString(hmac.doFinal()), is(EXPECTED_HMAC)); } @Test public void testDoFinalWithInput() { - HMACSHA2256 hmac = initHmac(); + BaseMAC hmac = initHmac(); assertThat(Hex.toHexString(hmac.doFinal(PLAIN_TEXT)), is(EXPECTED_HMAC)); } @Test public void testUpdateWithDoFinalWithResultBuffer() { - HMACSHA2256 hmac = initHmac(); + BaseMAC hmac = initHmac(); byte[] resultBuf = new byte[32]; hmac.update(PLAIN_TEXT); hmac.doFinal(resultBuf, 0); assertThat(Hex.toHexString(resultBuf), is(EXPECTED_HMAC)); } - private HMACSHA2256 initHmac() { - HMACSHA2256 hmac = new HMACSHA2256(); + private BaseMAC initHmac() { + BaseMAC hmac = Macs.HMACSHA2256().create(); hmac.init("koopiegh4reengah1que9Wiew7ohahPh".getBytes(CHARSET)); return hmac; } -} \ No newline at end of file +} diff --git a/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA2512Test.java b/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA2512Test.java index 39deccbd8..ce47fa067 100644 --- a/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA2512Test.java +++ b/src/test/java/net/schmizz/sshj/transport/mac/HMACSHA2512Test.java @@ -20,6 +20,8 @@ import java.nio.charset.Charset; +import com.hierynomus.sshj.transport.mac.Macs; + import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; @@ -30,28 +32,28 @@ public class HMACSHA2512Test { @Test public void testUpdateWithDoFinal() { - HMACSHA2512 hmac = initHmac(); + BaseMAC hmac = initHmac(); hmac.update(PLAIN_TEXT); assertThat(Hex.toHexString(hmac.doFinal()), is(EXPECTED_HMAC)); } @Test public void testDoFinalWithInput() { - HMACSHA2512 hmac = initHmac(); + BaseMAC hmac = initHmac(); assertThat(Hex.toHexString(hmac.doFinal(PLAIN_TEXT)), is(EXPECTED_HMAC)); } @Test public void testUpdateWithDoFinalWithResultBuffer() { - HMACSHA2512 hmac = initHmac(); + BaseMAC hmac = initHmac(); byte[] resultBuf = new byte[64]; hmac.update(PLAIN_TEXT); hmac.doFinal(resultBuf, 0); assertThat(Hex.toHexString(resultBuf), is(EXPECTED_HMAC)); } - private HMACSHA2512 initHmac() { - HMACSHA2512 hmac = new HMACSHA2512(); + private BaseMAC initHmac() { + BaseMAC hmac = Macs.HMACSHA2512().create(); hmac.init("paishiengu1jaeTie5OoTu2eib7Kohqueicie7ahLohfoothahpeivi5weik1EiB".getBytes(CHARSET)); return hmac; } diff --git a/src/test/java/net/schmizz/sshj/xfer/scp/SCPFileTransferTest.java b/src/test/java/net/schmizz/sshj/xfer/scp/SCPFileTransferTest.java index 87119ce9a..77bdcd0a4 100644 --- a/src/test/java/net/schmizz/sshj/xfer/scp/SCPFileTransferTest.java +++ b/src/test/java/net/schmizz/sshj/xfer/scp/SCPFileTransferTest.java @@ -28,8 +28,8 @@ import java.io.File; import java.io.IOException; -import static junit.framework.Assert.assertFalse; -import static junit.framework.Assert.assertTrue; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; import static org.hamcrest.MatcherAssert.assertThat; public class SCPFileTransferTest { @@ -55,7 +55,7 @@ public void init() throws IOException { sshClient = fixture.setupConnectedDefaultClient(); sshClient.authPassword("test", "test"); } - + @After public void cleanup() { if (targetFile.exists()) {