From 2c66aa8e4ec5b4bfc80f991bb2b3069b108b6121 Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Tue, 2 Mar 2021 11:01:02 +0100 Subject: import from RHEL 7.7 --- ...p-seek-Don-t-flush-buffers-on-same-offset.patch | 54 ---------------------- 1 file changed, 54 deletions(-) delete mode 100644 0001-sftp-seek-Don-t-flush-buffers-on-same-offset.patch (limited to '0001-sftp-seek-Don-t-flush-buffers-on-same-offset.patch') diff --git a/0001-sftp-seek-Don-t-flush-buffers-on-same-offset.patch b/0001-sftp-seek-Don-t-flush-buffers-on-same-offset.patch deleted file mode 100644 index 9acbd6d..0000000 --- a/0001-sftp-seek-Don-t-flush-buffers-on-same-offset.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 486bb376218a37fe15318d7724d6eada36b81e6c Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 26 Mar 2013 17:58:04 +0100 -Subject: [PATCH 1/3] sftp: seek: Don't flush buffers on same offset - -Signed-off-by: Richard W.M. Jones ---- - src/sftp.c | 27 +++++++++++++++------------ - 1 file changed, 15 insertions(+), 12 deletions(-) - -diff --git a/src/sftp.c b/src/sftp.c -index d0536dd..3760025 100644 ---- a/src/sftp.c -+++ b/src/sftp.c -@@ -2132,21 +2132,24 @@ libssh2_sftp_fstat_ex(LIBSSH2_SFTP_HANDLE *hnd, - LIBSSH2_API void - libssh2_sftp_seek64(LIBSSH2_SFTP_HANDLE *handle, libssh2_uint64_t offset) - { -- if(handle) { -- handle->u.file.offset = handle->u.file.offset_sent = offset; -- /* discard all pending requests and currently read data */ -- sftp_packetlist_flush(handle); -+ if(!handle) -+ return; -+ if(handle->u.file.offset == offset && handle->u.file.offset_sent == offset) -+ return; - -- /* free the left received buffered data */ -- if (handle->u.file.data_left) { -- LIBSSH2_FREE(handle->sftp->channel->session, handle->u.file.data); -- handle->u.file.data_left = handle->u.file.data_len = 0; -- handle->u.file.data = NULL; -- } -+ handle->u.file.offset = handle->u.file.offset_sent = offset; -+ /* discard all pending requests and currently read data */ -+ sftp_packetlist_flush(handle); - -- /* reset EOF to False */ -- handle->u.file.eof = FALSE; -+ /* free the left received buffered data */ -+ if (handle->u.file.data_left) { -+ LIBSSH2_FREE(handle->sftp->channel->session, handle->u.file.data); -+ handle->u.file.data_left = handle->u.file.data_len = 0; -+ handle->u.file.data = NULL; - } -+ -+ /* reset EOF to False */ -+ handle->u.file.eof = FALSE; - } - - /* libssh2_sftp_seek --- -1.8.1.4 - -- cgit