Age | Commit message (Collapse) | Author |
|
This fixes #4667
|
|
|
|
|
|
|
|
Fix SystemIOWindows.PathGetFullPath per review comments.
Add unit tests for SystemIOWindows.PathGetFullPath and SystemIOWindows.PrefixWithUNC. Also, fix a bug in the SystemIOWindows.PrefixWithUNC change that was exposed by these new unit tests.
In BackendToolTests, remove unused [Setup] and [TearDown] methods.
|
|
The handling of relative paths in SystemIOWindows was broken by changes for #4256.
Change SystemIOWindows.PrefixWithUNC to only prefix paths with `\\?\` when they can be prefixed; i.e., only prefix paths that are fully qualified and that don't contain relative path components like `.` or `..`. This way, relative paths passed to SystemIOWindows methods work correctly again. Also support network paths specified using forward slashes; e.g., `//example.com/share/foo.txt`.
Simplify SystemIOWindows.GetFullPath since Path.GetFullPath will honor `\\?\` prefixes and can replace forward slashes with backslashes, etc.
Copy and adapt source for Path.IsPathFullyQualified from https://github.com/dotnet/runtime, which is MIT licensed.
Add unit test for Duplicati.CommandLine.BackendTool to validate the fix.
This fixes #4632.
|
|
|
|
|
|
|
|
Domain, path and section is changed.
|
|
Fix Alternative FTP handling of paths with escaped characters
|
|
Fix bug in PutAsync implementations
|
|
Create custom Exception for remote list verification failures
|
|
Make dot in filter regex match newline characters
|
|
This fixes #4587.
|
|
|
|
Add Storj DCS backend and deprecated Tardigrade DCS backend.
Storj renamed their "Tardigrade Decentralized Cloud Storage" product to "Storj DCS". This adds a new Storj DCS backend and deprecates the old Tardigrade one. A warning is issued to inform Tardigrade users to modify their configurations to use the new backend.
This also adds a passphrase verification field to ensure that the user has provided the correct encryption passphrase.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Without await, the using statement can dispose the Stream before the
call to PutAsync completes, resulting in an ObjectDisposedException.
This fixes #4556.
|
|
|
|
Before performing test write, reset stream Position to 0, otherwise test performs zero-byte write.
When performing test read, verify that file was written correctly.
|
|
Add ability to provide SAS token for Azure backend
|
|
Avoid ECDSA algorithms when using SFTP with Mono
|
|
|
|
Fix bug in handling deprecated Azure and S3 options
|
|
Previously, we would catch any Exception thrown by VerifyRemoteList and
perform an auto-cleanup (if specified in the options). However, we
should only perform the auto-cleanup if VerifyRemoteList detected an
issue with the uploaded files. Otherwise, an unrelated exception can
cause the database repair to be performed unnecessarily. In the case of
a connection issue, this can leave the database in a corrupted state.
This fixes #4516.
|
|
.NET 5 moves the responsibility to the operating system, and since
SSH.NET currently relies on the ECDsaCng class, we will simply interpret
all exceptions to mean lack of ECDSA support.
|
|
This is simpler, and would potentially allow us to query this without an
instance.
|
|
|
|
It's possible that our test will no longer be valid (e.g., due to
changes in SSH.NET), so we don't want the backend to fail if our test
is no longer valid.
|
|
This more closely reflects the SSH.NET code.
|
|
The previous implementation could possibly fail for reasons unrelated to
ECDSA support.
|
|
|
|
In pull request #4443, we renamed some of the Azure and S3 options to
use dashes '-' instead of underscores '_' for consistency. However, our
treatment of the options in the backend constructors still required that
the underscore versions be present even if the dashed version was
provided.
Now, we allow for either option to be present, but the value for the
dashed version will take precedence.
|
|
|
|
Allow users to authenticate using a Shared access signature (SAS) token. SAS tokens are more secure because they:
* have a start and expiry date/time
* can be restricted to specified IP addresses
* can limit access scope to a single Storage blob container
|