From 39c00bff7ee1aa1516cbb670ad0b238163c87098 Mon Sep 17 00:00:00 2001 From: quamrulmina Date: Thu, 31 Dec 2015 01:12:33 -0600 Subject: [PATCH] Fix sftp-server to have process_setstat() work correctly in Win32 This fix allows WinSCP upload to finish properly as updating time was not working otherwise with driver letter support improvement. Other sftp clients will also work better/properly now. --- sftp-server.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sftp-server.c b/sftp-server.c index a3c7414..2bc941e 100644 --- a/sftp-server.c +++ b/sftp-server.c @@ -1023,6 +1023,14 @@ process_setstat(u_int32_t id) if ((r = sshbuf_get_cstring(iqueue, &name, NULL)) != 0 ) fatal("%s: buffer error: %s", __func__, ssh_err(r)); + #ifdef WIN32_FIXME + char resolvedname[MAXPATHLEN]; + if (realpathWin32i(name, resolvedname)) + { + free(name); + name = strdup(resolvedname); + } + #endif if ((r = decode_attrib(iqueue, &a)) != 0) fatal("%s: buffer error: %s", __func__, ssh_err(r));