1
0
mirror of https://github.com/winscp/winscp.git synced 2026-10-25 14:19:30 +03:00

130 Commits

Author SHA1 Message Date
Eduardo Correia
a0c8c09aaa Build local paths with CombinePaths and the platform's path delimiter
Use the platform-independent CombinePaths for the local paths that were built
with a literal backslash, adding a three-component overload for the ones that
join three parts (the AWS files, the user extensions folder, PuTTY's default
paths). ValidLocalPath now joins with PathDelim. This keeps the Windows result
the same while producing the platform's delimiter elsewhere.
2026-10-24 13:13:45 +02:00
Eduardo Correia
fa44986109 Load S3 tags for files only, as the Properties dialog shows them
LoadFilesProperties asks DoLoadFileProperties for tags whenever a single
entry is selected, a folder too, although the Properties dialog shows tags
for files only. A folder that is only a prefix of its objects' keys -- as
folders made by other tools often are -- has no object of its own to read
tags from: GetObjectTagging answers NoSuchKey, and the folder's Properties
fail. Tags are now loaded for files only.
2026-10-19 15:00:08 +02:00
Eduardo Correia
9d221f6ac0 Load an S3 object's properties from servers that keep no object ACLs
DoLoadFileProperties reads the object's ACL before its tags and fails on any
error, so on a server that implements no object ACLs -- versitygw answers
GetObjectAcl with 501 NotImplemented, as do other S3-compatible servers --
the Properties dialog does not open at all, the tags included. A
NotImplemented answer now reads as an ACL with no grants; any other error
still fails as before.
2026-10-19 14:50:20 +02:00
Martin Prikryl
a6916d4101 Unused code obsoleted by 64050d10
Source commit: 92ea806f97f6683c5e5158c7236b49ce04aa620c
2026-10-03 08:42:27 +02:00
Martin Prikryl
a2119a7eac Types and casts safe in respect to pointer size for forward 64-bit compatibility
Also GetWindowLongPtr and GWLP_USERDATA

https://winscp.net/tracker/618

Source commit: c85fdf15e50ce8a6f35b1c4d2a0125a0b9c4f1f0
2026-01-22 14:51:13 +01:00
Martin Prikryl
e5efed8955 Refactoring old-style casts
Source commit: 3c37b3a958525c595ad44b081b2e0f3b288b8eb0
2025-12-18 01:20:33 +01:00
Martin Prikryl
87b18e3620 Clang supports nested structure initialization
Source commit: 16ef6d860e60a57b46551a89a2a10d9880429371
2025-11-22 01:36:33 +01: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
3a6e9797aa Issue 2355 – Error when the last page of S3 directory listing is empty
https://winscp.net/tracker/2355

Source commit: fc753c6aad83e9377fc0f9ae8a18dc5a8b866437
2025-03-14 16:35:34 +01:00
Martin Prikryl
88b50c16f5 S3 was broken by 4019b56f
(cherry picked from commit 51cdde2dc0)

Source commit: d5e816f67335e8959d44efefba957e8efafe914a
2025-03-13 16:48:31 +01:00
Martin Prikryl
3f4e41fee0 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

(cherry picked from commit f7f00c631e)

Source commit: 90ad9390853aba308abe73cf02e0281238c53c87
2025-03-13 16:46:26 +01:00
Martin Prikryl
8cd48fd0e5 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

(cherry picked from commit 4019b56ffb)

Source commit: 8f8d10bc0c9f4ca626dceda1d3e9889dc22f4394
2025-03-13 06:42:18 +01:00
Martin Prikryl
ee99cb926e Issue 2353 – Display and modify S3 file/object tags
https://winscp.net/tracker/2353
(cherry picked from commit e202af0bdc)

Source commit: 412b87273dcae90457c83baa08cecaf675edd1e8
2025-03-13 00:57:01 +01:00
Martin Prikryl
82ca508ba5 Bug fix: Unicode contents in web sources was incorrectly decoded
Casting RawByteString to UTF8String does not properly decode UTF8

Source commit: 85ab7076039c7fc9f8b35c73b7c843ed6f892834
2025-02-28 01:09:12 +01:00
Martin Prikryl
9d3f348f78 Issue 2351 – Allow S3 connection with IAM roles on instances that require IMDSv2
https://winscp.net/tracker/2351

Source commit: a310c6641ad5533b1492b6c1d5b8ac4fea91954b
2025-02-20 16:17:56 +01:00
Martin Prikryl
ef4e1e87ab Unused parameter
(it seems that it was never used)

Source commit: 7a61240971f9606d2156e588352db3f63d531e7f
2025-01-24 01:14:40 +01:00
Martin Prikryl
5ed3336f29 AWS metadata service connection timeout is by default one second and AWS_METADATA_SERVICE_TIMEOUT is respected
Source commit: 59fc680d0aaab81fc29e111bca22267edf7df510
2025-01-22 17:52:59 +01:00
Martin Prikryl
ae9b173170 Issue 2327 – Failure when opening TLS connection with invalid OpenSSL configuration file
https://winscp.net/tracker/2327

Source commit: ee33d2badfff95c721fe412c86e7b305674e6703
2024-11-20 01:09:37 +01:00
Martin Prikryl
e09e95ee43 Upgrade to C++ Builder 11
Comments:
- .res files seem to be linked automatically, so explicit entries in project files caused duplicates
- JCL updated for compatibility with BCB11 (jcld28win32.inc obtained by running JCJ installer [uninstalled afterwards])

Source commit: ec28d10a0bbb346ed2bb3940aed37e777342e663
2024-10-08 07:18:18 +02:00
Martin Prikryl
f008f112cb Issue 2309 – Stall when switching from S3 to other protocol on Login dialog on some networks
https://winscp.net/tracker/2309

Source commit: 0ceea38d1676492d0af77660e5289e1f5bcead8e
2024-08-25 13:33:25 +02:00
Martin Prikryl
29f6f25840 Code indentation
Source commit: 3ec320919fd29f073c8fc170fcb790e808b81056
2024-04-11 15:40:32 +02:00
Martin Prikryl
fb147cdc2a Issue 2249 – Allow assuming IAM role in S3 sessions + Only profiles that contain both aws_access_key_id and aws_secret_access_key are listed on the Login dialog
https://winscp.net/tracker/2249

Source commit: 00151a6bc71d411588f2c2909076561731bf8ed9
2024-04-10 16:51:51 +02:00
Martin Prikryl
481218e7d7 AWS credential profiles in config file are also recognized + Bug fix: AWS credentials file path was resolved using AWS_CONFIG_FILE environment variable instead of correct AWS_SHARED_CREDENTIALS_FILE
Source commit: fd25d9213d71c28c9b3ea62e2ae995d5572959c1
2024-04-10 01:09:50 +02:00
Martin Prikryl
bc8880137d Preferring AWS configuration file defined using an environment variable over the default one
For some reason we believed the AWS CLI behaved other way around - and maybe it did - but it does not - as of 2.15.36 (same for 2.13.38)

Source commit: 2a424606f8dd281b3a1b98dfbd93be23c2b1a405
2024-04-10 01:03:47 +02:00
Martin Prikryl
6aa15a907e Reusing Data variable
Source commit: efa50238f65f558d4e5550721eb2d2d24b83bb61
2024-04-04 17:01:28 +02:00
Martin Prikryl
e782da2c87 Issue 2260 – Failure when trying to synchronize files by checksum on server that does not support it
https://winscp.net/tracker/2260

Source commit: d23d1a3ca251922e98b128ea807f120a690fe517
2024-02-21 01:03:48 +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
068128f522 Issue 2213: Support for "Requester pays" S3 buckets
https://winscp.net/tracker/2213

Source commit: b9cc8e854b82d3c0a94e0481e16fa6b0f1e82c4a
2023-11-15 16:12:42 +01:00
Martin Prikryl
5b47f251c7 Factoring out S3GoogleCloudHostName
Source commit: 4a2a8119a2709496787867927e549a37a5d3486c
2023-11-14 01:12:10 +01:00
Martin Prikryl
b306995b1c OpenedSessionsS3Amazon and OpenedSessionsS3Other counters
Source commit: 5c34dc40d39cf93a217f8f341ab960db92f52853
2023-11-14 01:08:52 +01: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
acd12ea3d7 More meaningful error message when credentials are missing in scripting and .NET assembly
Source commit: a374ebe71eea553a366120f46b8d3169ad735a7a
2023-08-25 01:10:22 +02:00
Martin Prikryl
6f231acaf1 Bug 2089: Allow S3 connection with IAM role instead of credentials
https://winscp.net/tracker/2089

Source commit: 724382cc89254fb6b0d441f37bdae43c750fef09
2023-08-20 01:15:55 +02:00
Martin Prikryl
a6fdf6c7d5 Missing parameter
Should have been included in b1c505ca

Source commit: 97f8e213e243fb20edde5db93bc40b7f8f03f7f8
2023-08-19 10:36:51 +02:00
Martin Prikryl
455be1faba Comment on inconsistency with AWS CLI
Source commit: ffcc06e888a6caa64ba5a08bcb33c1d2d29d9cad
2023-08-17 01:05:29 +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
16aca462b2 Factoring out VerifyOrConfirmHttpCertificate
Source commit: ca328bed694998bd51fd74c95e8c08350d9a1394
2023-05-22 15:08:36 +02:00
Martin Prikryl
b8049eccbf Bug 2166: Failure when selecting S3 protocol in Login dialog with non-existing .aws/credentials file
https://winscp.net/tracker/2166

Source commit: f857ba4e14cb4853e03855ddb8e01974b38f587b
2023-02-18 01:03:13 +01:00
Martin Prikryl
7cc3d46aeb Reloading AWS credentials file when it changes
Source commit: 9d8fc42780130141c9da1d29e746378e1a500cfe
2023-01-07 00:57:36 +01:00
Martin Prikryl
aba9cfb6e5 Unused code
Source commit: 8395b83b6d912de81cd7f6e670617cd61c600177
2023-01-07 00:56:02 +01:00
Martin Prikryl
9fb5716081 AWS profile check was incorrect + Making the check case-insensitive for consistency with AWS config reading
Source commit: 2a92b357e5ced2f067b3af4d2ec370a0e9ee7392
2022-11-22 00:58:01 +01:00
Martin Prikryl
b79aaa06e8 Bug 2057: AWS S3 profile selection
https://winscp.net/tracker/2057

Source commit: 8c5918d7f523c645570fc54812155ef4335c076e
2022-11-19 01:04:07 +01:00
Martin Prikryl
5d462e92db Comment to assert that AWS CLI really illogically prefers default config file over AWS_CONFIG_FILE
Source commit: e70eaf14aadbb766214d5098deeb7bbd553ae515
2022-11-19 01:01:54 +01:00
Martin Prikryl
2d860b78e1 Redundant check
Source commit: 8c16028197fda163b596fea6a4c60de9b4424912
2022-11-17 00:52:15 +01:00
Martin Prikryl
2fdcc0e6ad Using unique_ptr instead of auto_ptr + Replacing use of auto_ptr, where unique_ptr cannot be used with plain pointers
Source commit: 0c397b15f93f20fcb52bdd7c8747aae8429f8b1e
2022-10-06 01:17:32 +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
1385cd78a5 Bug 1995: Support S3 servers without TLS encryption
https://winscp.net/tracker/1995

Source commit: ab6c0e4140430caa3512fcc6617e5ad98b57a30a
2022-08-11 00:56:27 +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