76 lines
4.0 KiB
Diff
76 lines
4.0 KiB
Diff
--- apache-sshd-2.7.0/sshd-core/src/main/java/org/apache/sshd/common/io/nio2/Nio2Session.java 2021-07-30 09:48:59.082251041 +0200
|
|
+++ apache-sshd-2.7.0/sshd-core/src/main/java/org/apache/sshd/common/io/nio2/Nio2Session.java 2021-07-30 09:54:40.568508196 +0200
|
|
@@ -353,13 +353,13 @@
|
|
log.trace("handleReadCycleCompletion({}) read {} bytes after {} nanos at cycle={}",
|
|
this, result, System.nanoTime() - lastReadCycleStart.get(), readCyclesCounter);
|
|
}
|
|
- buffer.flip();
|
|
+ ((java.nio.Buffer)buffer).flip();
|
|
|
|
IoHandler handler = getIoHandler();
|
|
handler.messageReceived(this, bufReader);
|
|
if (!closeFuture.isClosed()) {
|
|
// re-use reference for next iteration since we finished processing it
|
|
- buffer.clear();
|
|
+ ((java.nio.Buffer)buffer).clear();
|
|
doReadCycle(buffer, completionHandler);
|
|
} else {
|
|
if (debugEnabled) {
|
|
--- apache-sshd-2.7.0/sshd-sftp/src/main/java/org/apache/sshd/sftp/client/impl/SftpRemotePathChannel.java 2021-07-30 09:48:59.150251491 +0200
|
|
+++ apache-sshd-2.7.0/sshd-sftp/src/main/java/org/apache/sshd/sftp/client/impl/SftpRemotePathChannel.java 2021-07-30 09:54:40.572508221 +0200
|
|
@@ -21,6 +21,7 @@
|
|
|
|
import java.io.IOException;
|
|
import java.io.StreamCorruptedException;
|
|
+import java.nio.Buffer;
|
|
import java.nio.ByteBuffer;
|
|
import java.nio.MappedByteBuffer;
|
|
import java.nio.channels.AsynchronousCloseException;
|
|
@@ -153,7 +154,7 @@
|
|
if (read > 0) {
|
|
// reference equality on purpose
|
|
if (wrap == buffer) {
|
|
- wrap.position(wrap.position() + read);
|
|
+ ((Buffer)wrap).position(wrap.position() + read);
|
|
} else {
|
|
buffer.put(wrap.array(), wrap.arrayOffset(), read);
|
|
}
|
|
@@ -258,7 +259,7 @@
|
|
wrap.arrayOffset() + wrap.position(), written);
|
|
// reference equality on purpose
|
|
if (wrap == buffer) {
|
|
- wrap.position(wrap.position() + written);
|
|
+ ((Buffer)wrap).position(wrap.position() + written);
|
|
}
|
|
curPos += written;
|
|
totalWritten += written;
|
|
--- apache-sshd-2.7.0/sshd-sftp/src/main/java/org/apache/sshd/sftp/server/AbstractSftpSubsystemHelper.java 2021-07-30 09:48:59.150251491 +0200
|
|
+++ apache-sshd-2.7.0/sshd-sftp/src/main/java/org/apache/sshd/sftp/server/AbstractSftpSubsystemHelper.java 2021-07-30 09:55:19.804767492 +0200
|
|
@@ -942,7 +942,7 @@
|
|
if (remainLen < digestBuf.length) {
|
|
bb = ByteBuffer.wrap(digestBuf, 0, remainLen);
|
|
}
|
|
- bb.clear(); // prepare for next read
|
|
+ ((java.nio.Buffer)bb).clear(); // prepare for next read
|
|
|
|
int readLen = channel.read(bb);
|
|
if (readLen < 0) {
|
|
@@ -967,7 +967,7 @@
|
|
if (remainLen < digestBuf.length) {
|
|
bb = ByteBuffer.wrap(digestBuf, 0, remainLen);
|
|
}
|
|
- bb.clear(); // prepare for next read
|
|
+ ((java.nio.Buffer)bb).clear(); // prepare for next read
|
|
|
|
int readLen = channel.read(bb);
|
|
if (readLen < 0) {
|
|
@@ -1101,7 +1101,7 @@
|
|
if (remainLen < digestBuf.length) {
|
|
bb = ByteBuffer.wrap(digestBuf, 0, remainLen);
|
|
}
|
|
- bb.clear(); // prepare for next read
|
|
+ ((java.nio.Buffer)bb).clear(); // prepare for next read
|
|
|
|
int readLen = channel.read(bb);
|
|
if (readLen < 0) {
|