From 8ca6451d5dee2667d1a5da06083fb79171853036 Mon Sep 17 00:00:00 2001 From: Jeroen van Erp Date: Wed, 27 Dec 2017 23:02:41 +0100 Subject: [PATCH] Fixed length bug in putString (Fixes #187) --- src/main/java/net/schmizz/sshj/common/Buffer.java | 2 +- src/main/java/net/schmizz/sshj/sftp/RemoteFile.java | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/src/main/java/net/schmizz/sshj/common/Buffer.java b/src/main/java/net/schmizz/sshj/common/Buffer.java index 8cf35ae3..fe9805f6 100644 --- a/src/main/java/net/schmizz/sshj/common/Buffer.java +++ b/src/main/java/net/schmizz/sshj/common/Buffer.java @@ -246,7 +246,7 @@ public class Buffer> { * @return this */ public T putBytes(byte[] b, int off, int len) { - return putUInt32(len - off).putRawBytes(b, off, len); + return putUInt32(len).putRawBytes(b, off, len); } public void readRawBytes(byte[] buf) diff --git a/src/main/java/net/schmizz/sshj/sftp/RemoteFile.java b/src/main/java/net/schmizz/sshj/sftp/RemoteFile.java index 14d054e1..25463bfb 100644 --- a/src/main/java/net/schmizz/sshj/sftp/RemoteFile.java +++ b/src/main/java/net/schmizz/sshj/sftp/RemoteFile.java @@ -82,9 +82,7 @@ public class RemoteFile throws IOException { return requester.request(newRequest(PacketType.WRITE) .putUInt64(fileOffset) - // TODO The SFTP spec claims this field is unneeded...? See #187 - .putUInt32(len) - .putRawBytes(data, off, len) + .putString(data, off, len) ); }