Commit Graph
1579 Commits
Author SHA1 Message Date
Kenneth Skovhede 15db2198a9 Add explicit status code check for B2 upload
This PR adds an explicit check for the status code for a B2 upload to ensure that non-success status codes are treated as failures.

Prior to this PR an upload would be considered a success if it has a failed status code but returns a valid JSON document with a `contentLength` property.
2025-10-10 18:48:34 +02:00
Kenneth Skovhede 9adca8b706 Downgrade mac package 2025-10-02 21:56:31 +02:00
Kenneth Skovhede 817390999f Updated uplink.NET packages to 2.14.3598.
This addresses #5793
2025-10-02 21:39:12 +02:00
Kenneth Skovhede 4b1d2f1538 Fixed a warning 2025-09-25 11:15:43 +02:00
Kenneth SkovhedeandGitHub 060d83e0d9 Merge branch 'master' into feature/simplify-webmodule-lookups 2025-09-23 13:14:44 +02:00
Kenneth Skovhede 48a5e8cf0e Google IAM support
This adds support for using a Google Service Account JSON instead of the OAuth-based AuthID.

This fixes #3835
2025-09-22 16:07:23 +02:00
Kenneth Skovhede cdc3b88b03 Updated MSGraph parsing of JSON
This PR updates the parsing code for errors/messags to avoid trying to read the stream twice.

This also removes the support for the unused HttpWebResponse (which is deprecated).
2025-09-19 15:34:40 +02:00
Kenneth SkovhedeandGitHub 360253c062 Merge branch 'master' into feature/hyperv-and-mssql-sources 2025-09-12 09:07:04 +02:00
Smyja 067ac5554d fix(S3): validate endpoint does not contain path 2025-09-11 08:43:04 +01:00
Kenneth Skovhede 0497de7e9f Revert MinIO to version 6.0.0
This fixes #6489
2025-09-06 15:34:38 +02:00
Kenneth Skovhede 2822e95626 Simplify webmodule lookups
This PR adds the lookup data to the module output, such that the FE does not need to call a webmodule to get the dictionaries with lookup values.
2025-09-05 10:49:20 +02:00
Svend Roperos c1e22faa03 fix: make string.Split calls explicit to resolve ambiguous overloads 2025-09-04 20:14:52 +02:00
Kenneth Skovhede 69157d7ba8 Add override for sigv4 hash in AWS client 2025-08-18 10:03:12 +02:00
Kenneth Skovhede bee147c79e Don't lowercase base64 2025-08-15 11:34:08 +02:00
Kenneth Skovhede a673bd0fab Fixed pre-calc SHA256 on AWS S3
This fixes pre-calculating the SHA256 hash for AWS SDK requests to S3.
This fixes an issue where a throttled stream would not be throttled correctly, because the AWS library would read the throttled stream twice (once for hashing, and once for transmitting).

To ensure compatibility with Wasabi S3, the hash is also lowercased.
2025-08-15 10:59:38 +02:00
Kenneth Skovhede 94058f8ac0 Handle nulls in file paths
This PR updates the File backend to sanitize filenames returned when listing the directory. For now, the sanitization only removes trailing/leading null characters.

This fixes #6449
2025-08-12 08:36:10 +02:00
Kenneth Skovhede 21061b15a6 Fixed more incorrect nullability in AWS S3 2025-08-08 15:16:22 +02:00
Kenneth Skovhede 79c03d4601 Avoid null values in commonprefixes (defective nullable marker in AWS library) 2025-08-08 14:07:14 +02:00
Kenneth SkovhedeandGitHub 61b7e806fc Merge branch 'master' into 0nbrsf-codex/find-outdated-packages 2025-08-07 23:17:33 +02:00
Kenneth Skovhede d94ca804ea Fixed CodeQL compile issue + a warning 2025-08-07 11:24:10 +02:00
Kenneth SkovhedeandGitHub ba7bee397c Merge branch 'master' into 0nbrsf-codex/find-outdated-packages 2025-08-07 10:48:59 +02:00
Kenneth Skovhede c1bef62d8b Bumped AWSSDK libraries to be in sync 2025-08-07 10:47:35 +02:00
Kenneth Skovhede 3a294d95fb Fixed compile warnings 2025-08-07 08:06:24 +02:00
Marcelo C. 0a545120cc Removing chunksize from B2 backend
This fixes issue #6438
2025-07-30 09:44:31 -03:00
Kenneth Skovhede 79811dc4c6 Added correct encode and decode of paths in urls.
The URLs passed to the custom URL parser were not decoding the path part, but passing it directly. This caused problems if the input was correctly URL encoded.

The updated code now correctly decodes the hostname+path parts, and encodes them again.
2025-07-11 12:08:04 +02:00
Kenneth Skovhede 4fe678b5e1 Improve OAuth error handling
This PR updates OAuth handling to not retry if the request has been cancelled, as no further attempts will work, but the wait delay would still be applied.

Now the cancellation triggers immediately, even if we are in the wait stage.

If the server returns an error message, that message is now propagated to the client so the user can see what the problem might be.
2025-07-07 15:40:32 +02:00
Kenneth Skovhede fa19725a9a Fixed creating folder with Google Drive
This fixes #6389
2025-07-07 11:46:20 +02:00
Kenneth Skovhede 1692428406 Fix build by reverting breaking package updates 2025-06-25 20:03:02 +02:00
Kenneth Skovhede 819af9e66f Update .NET dependencies 2025-06-24 07:51:26 +02:00
Carl Johnsen e71adc8ad9 Added specific package versions to the Storj backend, as the default would pull in old sqlite packages that could conflict with the newer sqlite packages pulled in by Microsoft.Data.Sqlite 2025-06-23 13:28:37 +02:00
Kenneth Skovhede bf9c0e1a95 Added Mega S4 endpoints to list of destinations 2025-06-17 09:14:06 +02:00
Kenneth Skovhede 930764a323 Update WebDAV backend
This re-introduces the debug-propfind feature to dump the PROPFIND response to a file.

It also introduces constants for the option names to be less error prone.

A few minor adjustements were made to the timeouts and the dispose flag.
2025-06-13 11:33:46 +02:00
Kenneth SkovhedeandGitHub d432006207 Merge branch 'master' into feature/http-client-timeout-revision 2025-06-12 22:27:12 +02:00
Marcelo C. 477f70508e Applying suggested changes 2025-06-12 11:29:44 -03:00
Marcelo C. 614f047dbb Sets infinite timeout for HTTP clients
Ensures that long-running HTTP requests, such as downloads and uploads, do not timeout prematurely.

This change configures specific HttpClient instances with an infinite timeout to accommodate operations that may take an extended period. The default 100s timeout is retained for some operations like registration, where a long delay may indicate a problem.
2025-06-12 10:33:13 -03:00
Kenneth Skovhede 35058d333e Update handling of alternate OAuth url
This PR removes the `OAuthContextSettings` class, and makes the `--oauth-url` option available on each backend that uses it, so it can be configured as part of the destination.

To assemble everything related to configuring OAuth, the code was moved to the `AuthIdOptionsHelper`, such that the usage can be shared between implementations.

This PR also adds the option to set the default OAuth url from the environment variable `DUPLICATI_OAUTH_SERVICE`.

The server can then be set in the following locations (most important last):
- Environment variable
- Server-wide advanced settings
- Backup job advanced settings (or commandline)
- Destination url
2025-06-11 09:27:40 +02:00
Kenneth Skovhede fa6343fb71 Added exception guards for testing for key availability. 2025-06-03 10:17:49 +02:00
Kenneth Skovhede f2b7ed3bfd Bumped SSH.Net to 2025.0.0 2025-06-03 09:48:10 +02:00
Kenneth Skovhede 4337d0d478 Fixed wrong package.
Fixed wrong loading of keys.
Added support for MacOS KeyChain keys.
2025-06-03 09:47:39 +02:00
Kenneth Skovhede 1420bed3c5 Rename option to disable ssh agent 2025-06-03 06:23:45 +02:00
Kenneth SkovhedeandGitHub e99bcd84f3 Merge pull request #6291 from duplicati/feature/remote-oauth-helper
Remove OAuthHelper
2025-05-26 08:28:44 +02:00
Kenneth Skovhede bc48135782 Fixed code to be compatible with System.Text.Json instead of NewtonSoft.Json 2025-05-24 15:50:37 +02:00
Kenneth Skovhede 0eef7ec49b Final removal of AsyncHttpRequest. 2025-05-24 13:55:19 +02:00
Kenneth Skovhede 9723b78279 Fixed nullability issues 2025-05-24 13:54:59 +02:00
Kenneth SkovhedeandGitHub 08f4ef897f Merge pull request #6292 from marceloduplicati/feature/openstack-httpmigration
Refactors OpenStack backend to use HttpClient
2025-05-24 13:46:13 +02:00
Kenneth Skovhede f3d24bafe7 SSH key supports direct content
Added support for providing the SSH key via a non-encoded key parameter, as the connection string is already url encoded.
2025-05-24 11:01:49 +02:00
Kenneth Skovhede 06c5b14eda Minor cleanup to use the HttpClient API 2025-05-24 10:51:00 +02:00
Marcelo C. 262aca847d Exception Handling migrated from WebException 2025-05-23 12:09:11 -03:00
Marcelo C. 132508545c Openstack HttpClient migration 2025-05-23 10:37:42 -03:00
Kenneth Skovhede 70f092cf49 Reverted some uses of TryAddWithoutValidation 2025-05-23 14:52:07 +02:00