Martin Prikryl
b66c08b30a
Issue 2450 – Slashes in filenames can cause path traversal when invalid filename characters replacement is disabled
...
https://winscp.net/tracker/2450
Source commit: dbf555cdba84101ff9a4e2e491544515a5a95b54
2026-06-16 00:50:07 +02:00
Martin Prikryl
e5efed8955
Refactoring old-style casts
...
Source commit: 3c37b3a958525c595ad44b081b2e0f3b288b8eb0
2025-12-18 01:20:33 +01:00
Martin Prikryl
a5dcb5f03c
Using std::size instead of custom macro
...
Source commit: 1a89c80dd42426351f261526b617534bab664208
2025-12-07 01:17:54 +01:00
Martin Prikryl
086aec0991
No need to suspend operation, while logging an exception
...
In the past the predecessor of HandleException probably showed the error, but it did not already in 3.0
Source commit: 9ec53d6edfaef2acf288b0ebbf6f9eb90a242ba4
2025-09-16 11:27:59 +02:00
Martin Prikryl
b13e2e7c2b
#pragma package(smart_init) is not useful out of packages
...
Source commit: 7635ac3b532214f27ea2b6fe6aa80398c857cfcd
2025-08-23 01:06:48 +02:00
Martin Prikryl
3817bbd736
Preparing for separate pre-compiled header file required by Clang
...
- Once doing that, including more headers to PCH, not just vcl.h
- Clang won't need explicit include, but we will probably keep it anyway.
- #pragma hdrstop has no effect in Clang
Source commit: adc8a268b6907c5337ccaa430cca7526793a3019
2025-08-22 15:43:55 +02:00
Martin Prikryl
92ba1e3f0e
Some (hopefully noop) refactoring to solve Clang internal compiler error when using new variable in __finally block + Some other small code changes imposed by Clang
...
Source commit: eef61854e4463990c6e823a08451a9e229a8c54b
2025-03-14 16:17:09 +01:00
Martin Prikryl
7b54dde3a6
Clang identifies some functions as "noreturn" + one noexcept(false)
...
Source commit: fc0c35fdddcd50a10d9ca13fc515164885325f81
2025-03-14 16:15:03 +01:00
Martin Prikryl
f7f00c631e
Clang imposed changes that should be noop and have no effect on classic compiler
...
Mostly:
– incorrectly identified uninitialized variables
– explicit static global variables
– const, sign and down casts and safety
– typename use
– semicolon after function implementation
– unused variables, fields, arguments and macros
– field initialization order
– exact include filename case
– redundant in code macros already defined at project level
Source commit: 5c1338d95bd275082288dd1e773a033df6e379cd
2025-03-13 16:39:24 +01:00
Martin Prikryl
4019b56ffb
Code errors identified by Clang
...
Notably:
Bug fix: Monospace font is not remembered if SSH banners are administratively forced
Change: Bug fix: In XML log, filename tag was included in stat tag, although explicitly documented not to
Source commit: 693ecd9b083f1460dc4d1ae1ff49e625989f8a50
2025-03-13 06:36:08 +01:00
Martin Prikryl
e202af0bdc
Issue 2353 – Display and modify S3 file/object tags
...
https://winscp.net/tracker/2353
Source commit: 2193f9e58d66031ce58013da6a509090582addbe
2025-03-04 15:13:03 +01:00
Michael Lukashov
400bee57cf
minor: Fix typos ( #59 )
...
Fix various minor typos
2024-12-25 11:25:35 +01:00
Martin Prikryl
85f0e92ca6
Timeout* counters
...
Source commit: ac2610bb1cafef757caed4ecc5b46c9065e6c719
2024-03-21 12:43:55 +01:00
Mikhail Lukashov
a8e6220b88
fix typos
2024-01-05 10:37:32 +01:00
Martin Prikryl
9a06496936
Bug fix: When S3 or WebDAV server did not provide file timestamp, downloaded file was set to oldest possible timestamp
...
Source commit: cfb2d3d552d1c7d4192a6d152a9c4fd105f22484
2023-11-24 01:19:20 +01:00
Martin Prikryl
155053704c
Bug 2234: Cannot leave directory entered via cache with SCP protocol if it was deleted meanwhile
...
https://winscp.net/tracker/2234
Source commit: 7bfcbefd8e3533d4eb6fd078a8b3f5ff87e1a4cf
2023-10-27 01:03:15 +02:00
Martin Prikryl
762d297e07
Fixing b28836e3
...
Source commit: aea1fb65d67e1f8a1f3a5c9b3d184b96e775d355
2023-10-26 16:52:50 +02:00
Martin Prikryl
b28836e3fc
Inlining method that was used only once
...
Source commit: c5ddd42debf2661beae413d7085511a82298c658
2023-10-26 14:14:19 +02:00
Martin Prikryl
700baf45ee
Restoring consistent behavior of failing, between duplicating and moving/renaming files over existing file with WebDAV protocol in scripting and .NET assembly
...
The discrepancy was introduced by Bug 2120 cb021fe3 .
This restores the mv/MoveFile behavior to fail, if the target file exists with WebDAV protocol (but still allows overwrite in the GUI).
The cp/DuplicateFile behavior is unchanged, but the internal API was modified to match that of mv/MoveFile, in anticipation of aligning move/duplicate command behavior in GUI and need to keep current scripting/.NET behavior.
Source commit: 4661a3ea7ec8123231e376aae9913ce8457750dd
2023-10-25 01:43:14 +02:00
Martin Prikryl
52cf67f62d
Bug 2209: Improve behavior when moving/renaming over an existing folder
...
https://winscp.net/tracker/2209
Source commit: d7a7d5b2efeb6d81bafe7e18f60457fdbd4e11d1
2023-08-07 01:15:03 +02:00
Martin Prikryl
1aee6f1464
Bug 513: Download single large file using multiple SFTP connections
...
https://winscp.net/tracker/513
Source commit: d57dcad76dfe8b333dfedd8419bce984a181280c
2023-07-27 01:02:51 +02:00
Martin Prikryl
c9390ec2f8
Factoring out TSearchRecChecked::GetFilePath()
...
Source commit: 520a6513e98fa51aaf4bf4609dd5f187291ab035
2023-06-29 01:06:58 +02:00
Martin Prikryl
233ee20502
Simplifying TFileBuffer interface and implementation
...
Source commit: 21e313288097378f7f473ae737755912cedf5188
2023-06-16 01:04:48 +02:00
Martin Prikryl
9dcaa8a7f3
Refactoring TTerminal::ReadFile + Adding TTerminal::TryReadFile + Solving memory leak on the way
...
Source commit: 4a5c5634006d2bd9a1c6c4831d0e528b91ecd9ae
2023-03-24 00:54:30 +01:00
Martin Prikryl
f4fd36ff6d
Bug 2129: Clear environment variables BLOCK_SIZE and LS_BLOCK_SIZE
...
https://winscp.net/tracker/2129
Source commit: 034fdfdbc7cc1811e15ae3a2276a8e655ec8e33f
2022-10-22 00:55:47 +02:00
Martin Prikryl
cb021fe3e3
Bug 2120: Consistent behavior across protocols when renaming/moving remote files
...
https://winscp.net/tracker/2120
Source commit: 0f11f96996352d8354d27e06d699e2c3baa4653f
2022-10-01 01:03:37 +02:00
Martin Prikryl
b538e0ac9f
Unused variable from b4c490b4
...
Source commit: dbc4efdc93e4595309fca331ec5ed8933bedbbe0
2022-07-17 00:52:55 +02:00
Martin Prikryl
b4c490b497
File checksum calculation support for SCP protocol and SFTP protocol via secondary shell session using shell commands like sha256sum
...
Part of Bug 52
https://winscp.net/tracker/52
Source commit: 6804a5d18405a91e8d0a2e0beccf2c31d43ed3f1
2022-07-16 00:54:05 +02:00
Martin Prikryl
8994d1f98e
Simplifying CalculateFilesChecksum API
...
There's a small side-effect: The scripting "checksum" command now prints file name only while before it printed the path as it was original specified in the command.
Source commit: 7594ed8befc67e4da3153cc8b1b711ab104db867
2022-07-14 00:57:43 +02:00
Martin Prikryl
b8b1cbec3e
Comment on flaw in handling folders starting with tilde and containing space
...
Source commit: f3e75c633a5cab827fed15c52abedfa9c5bfbd17
2022-07-14 00:53:25 +02:00
Martin Prikryl
b5f0f2cdb8
Bug fix: Incorrect escaping of values in single-quoted patterns in custom commands + Unifying escaping of shell command arguments
...
Source commit: 9a8ae65931380050e988b295b0ddd818c11a08a4
2022-07-03 01:05:07 +02:00
Martin Prikryl
03e38c75ae
Refactoring checksum calculation to share more code between FTP and SFTP in anticipation of reusing it for SCP/Shell
...
Source commit: 9a5138737031573ad64085fa64ef8fdd7fca8f77
2022-07-02 01:05:31 +02:00
Martin Prikryl
9b304c1b32
Bug 1641: Support ACL for S3
...
https://winscp.net/tracker/1641
Source commit: 03a0b16e1a553b6a2791a2276e94a4547ab3451f
2021-11-05 11:15:56 +01:00
Martin Prikryl
a4f5fdd521
Bug 2016: Failure when entering directory that contains file with a slash in its name
...
https://winscp.net/tracker/2016
Source commit: 3cab6dcd0bebd66d62bc8aa4ef37867b454b3d51
2021-08-13 16:29:39 +02:00
Martin Prikryl
3442fc2b6c
Bug 597: Bytes transferred are recorded in XML log and available in .NET assembly API + Bug fix: When size of a file downloaded with FTP protocol changes (or when ASCII mode is used) the logged size did not reflect the actual transfer size
...
https://winscp.net/tracker/597
Source commit: 0c5eb1660ec82a498c0183590116f944963c385f
2021-06-03 00:57:02 +02:00
Martin Prikryl
ecdcc5ff24
Invalid assertion
...
Source commit: 5e4c88c5dbc3d5b86a6cc9e2ad355c4a333cdc2c
2021-04-09 00:51:02 +02:00
Martin Prikryl
eaa430fbe4
Bug 1949: Improve handling of long shell command error messages
...
https://winscp.net/tracker/1949
Source commit: e62368857b958d84c02e837a62ab7efe4ea63e1d
2021-02-03 00:40:50 +01:00
Martin Prikryl
6e5c55fab9
With SFTP protocol files can be streamed from stdin in scripting (part of Bug 1738)
...
https://winscp.net/tracker/1738
Source commit: 9c5fd31853ec9bea872e1598abebc92ff507d693
2020-05-08 03:52:20 +02:00
Martin Prikryl
891e603d76
With SFTP protocol files can be streamed to stdout in scripting (part of Bug 1738)
...
https://winscp.net/tracker/1738
Source commit: c8f8fa855c60a139deee81060486543f934f9d6c
2020-05-01 01:17:38 +02:00
Martin Prikryl
a255db644c
Naming consistency
...
Source commit: 77b25e635d39a848f25c823c625a09832bccf3b8
2020-04-17 01:29:51 +02:00
Martin Prikryl
e31f0b66c7
Bug 1850: Support clearing GID/UID flag on directories with new versions of GNU coreutils
...
https://winscp.net/tracker/1850
Source commit: 06807f31167a532b668753db250ed2bc14d2236b
2020-04-07 01:08:07 +02:00
Martin Prikryl
1fea8fe90e
Bug 1770: Files larger than 0.5 GB are never uploaded in ascii/text mode with SCP protocol as it would fail anyway due to memory issues
...
https://winscp.net/tracker/1770
Source commit: 5556d5c5dc139de1e67954f7466ad174ce5a11f3
2019-07-25 01:01:15 +02:00
Martin Prikryl
7c0e13e33b
Bug 1637: Low logging level (S3 and partly WebDAV)
...
https://winscp.net/tracker/1637
Source commit: 6dc112edd1eae10916bc25717ec6581948db1abb
2018-10-25 04:51:10 +02:00
Martin Prikryl
1c4def2d13
Bug 1694: Optionally consider exit code 1 an error when executing a shell command on a server
...
https://winscp.net/tracker/1694
Source commit: 9532d0f403822a83785e51b6dbd07a46c52dd62e
2018-10-25 02:43:44 +02:00
Martin Prikryl
70edb8919a
Small command output processing refactoring + Unit tests
...
Source commit: 833b264c2eb0b3ddbfd0d92cfc563f378883e37e
2018-10-25 01:42:12 +02:00
Martin Prikryl
93fc1a2807
Bug 1677: Do not fail transfer if file selected for transfer, but excluded by file mask, is deleted during operation
...
https://winscp.net/tracker/1677
Source commit: 88d21caaae8bbd140229a313bd8aadb159706750
2018-09-18 00:59:23 +02:00
Martin Prikryl
49d876f2c5
Bug 1675: Prevent SCP server sending files that were not requested
...
https://winscp.net/tracker/1675
Source commit: 4aa587620973bf793fb6e783052277c0f7be4b55
2018-09-04 01:54:28 +02:00
Martin Prikryl
dae229725f
Factoring out TSearchRecSmart and TTerminal::DoAllowLocalFileTransfer + Using TSearchRec.Size instead of FindData.nFileSize*
...
Source commit: da32ece57151b0bd5547c383b919770bd133b8b1
2018-07-25 02:24:43 +02:00
Martin Prikryl
41f9c0137f
Factoring out IsRealFile function
...
Source commit: 046570706e02ac13da6ecbde4c6d270637c9af56
2018-07-25 02:03:14 +02:00
Martin Prikryl
2ab220f319
Refactoring file iteration
...
Source commit: e7c3822390daa5727d75fc5b36c82c8c1243bfea
2018-07-24 03:26:45 +02:00