Commit Graph
4937 Commits
Author SHA1 Message Date
Kenneth SkovhedeandGitHub 834ebd78b9 Merge pull request #4406 from warwickmm/update_ssh_net
Update SSH.NET to version 2020.0.1
2021-03-06 14:20:59 +01:00
Kenneth SkovhedeandGitHub 713b0b0746 Merge pull request #4417 from warwickmm/handle_unsupported_run_script_exit_codes
Abort with error if run-script-before script returns unsupported code
2021-03-06 14:12:33 +01:00
Kenneth SkovhedeandGitHub ec0d2cd255 Merge pull request #4418 from warwickmm/test/run_script_parsed_result
Make DUPLICATI__PARSED_RESULT consistent with OperationAbortReason
2021-03-06 14:11:19 +01:00
Kenneth SkovhedeandGitHub 29e598b704 Merge pull request #4447 from warwickmm/remove_unused_uplink_libraries
Remove unnecessary Tardigrade libraries from build output
2021-03-06 14:07:55 +01:00
Kenneth Hsu 69b9585421 Remove Telegram backend.
The TLSharp library has some issues and the behavior of the Telegram
backend is not reliable.

Some alternative libraries for communicating with the Telegram API are
TgSharp, TDLib and TdSharp.

This fixes #4424.

Revert "Merge pull request #4324 from martikyan/feature/telegram_backend"

This reverts commit c7f9f8f556, reversing
changes made to 85139f86f2.
2021-02-21 11:37:58 -08:00
Kenneth Hsu 841bcce389 Remove unnecessary Tardigrade libraries from build output.
The required libraries are already included in
Duplicati/Library/Backend/Tardigrade and copied to the output directory.
The extra storj_uplink.dll file in the output directory (caused when
releases are built on macOS) was causing spurious
BadImageFormatExceptions.

This fixes #4434.
2021-02-19 21:39:47 -08:00
Juliano Hubel 8933d6cd2a #3748|Spelling Correction 2021-02-16 17:10:02 +00:00
Juliano Hubel 6a569b80d2 #3748|Adding_Deprecated_messages_to_old_variables 2021-02-16 10:41:55 +00:00
Juliano Hubel 9047de86e1 #3748_Underscores_insted_of_dashes 2021-02-15 15:53:13 +00:00
Kenneth Hsu 88f6b1e55e Update SSH.NET to version 2020.0.1.
From the release notes:

Even though RFC 4253 requires that an identification string MUST be
terminated by a carriage return and line feed, this fix restores support
for banners and identification strings that are only terminated by a
line feed.

This is a workaround for an issue in version 7.4 of OpenSSH which was
fixed in version 7.5.
2021-01-24 10:14:02 -08:00
Kenneth SkovhedeandGitHub 14835d72e1 Merge pull request #4404 from warwickmm/fix_docker_restore_query
Fix restore issue in Docker installations
2021-01-17 22:22:49 +01:00
Thomas Suckow 5e8db0cead Fix execute bit 2021-01-16 16:19:46 -08:00
Kenneth Hsu 7d5b51482c Make DUPLICATI__PARSED_RESULT consistent with OperationAbortReason.
Previously, any exception, including OperationAbortExceptions thrown due
to run-script-before exit codes, would result in a Fatal parsed result.

This fixes #4222.
2021-01-14 19:38:55 -08:00
Kenneth Hsu 312c88e7e4 Abort with error if script exits with unsupported code.
This makes the code more consistent with the documentation in the
example scripts.
2021-01-10 10:44:58 -08:00
Thomas Suckow d4e613939e Debug macos time difference 2021-01-03 18:14:16 -08:00
Thomas Suckow 360d819c0d Threads are not longer abortable 2021-01-03 08:54:09 -08:00
Thomas Suckow e74433aced Use nuget posix library and fold UnixSupport into the normal build. 2021-01-03 08:07:00 -08:00
Thomas Suckow a759995e7b Just use the nuget version of the sqlite library 2021-01-02 22:26:00 -08:00
Kenneth Hsu e50d011a1d Update SSH.NET to version 2020.0.0.
This includes support for additional key exchange algorithms, host key
algorithms, and private key formats.

https://github.com/sshnet/SSH.NET/releases/tag/2020.0.0

This fixes #2808, #2950, #3360, and #4378.
2020-12-31 09:30:49 -08:00
Kenneth Hsu bacc50513e Provide explicit column names when creating temp table.
If we do not use an AS clause, the name of the column in the result set
is unspecified and may change depending on the version of SQLite.

https://www.sqlite.org/c3ref/column_name.html

This fixes #4403.
2020-12-29 19:58:06 -08:00
Thomas Suckow 50bc8880ac Restore not forking when debugging.
* Fix library name mismatch preventing environmental variables from being loaded correctly
2020-12-29 10:20:19 -08:00
Thomas Suckow acea2fe10f upstream
Update Telegram SharpAESCrypt dep
Update SystemIOWindows to split the difference

# Conflicts:
#	BuildTools/AutoUpdateBuilder/AutoUpdateBuilder.csproj
#	BuildTools/AutoUpdateBuilder/packages.config
#	BuildTools/DependencyFinder/DependencyFinder.csproj
#	BuildTools/DependencyFinder/packages.config
#	BuildTools/GnupgSigningTool/GnupgSigningTool.csproj
#	BuildTools/UpdateVersionStamp/UpdateVersionStamp.csproj
#	BuildTools/UpdateVersionStamp/app.config
#	Duplicati/CommandLine/BackendTester/Duplicati.CommandLine.BackendTester.csproj
#	Duplicati/CommandLine/BackendTester/app.config
#	Duplicati/CommandLine/BackendTool/Duplicati.CommandLine.BackendTool.csproj
#	Duplicati/CommandLine/BackendTool/app.config
#	Duplicati/CommandLine/ConfigurationImporter/Duplicati.CommandLine.ConfigurationImporter.csproj
#	Duplicati/CommandLine/Duplicati.CommandLine.csproj
#	Duplicati/CommandLine/RecoveryTool/Duplicati.CommandLine.RecoveryTool.csproj
#	Duplicati/CommandLine/RecoveryTool/packages.config
#	Duplicati/CommandLine/app.config
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/Duplicati.GUI.TrayIcon.csproj
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/app.config
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/packages.config
#	Duplicati/Library/AutoUpdater/Duplicati.Library.AutoUpdater.csproj
#	Duplicati/Library/AutoUpdater/app.config
#	Duplicati/Library/AutoUpdater/packages.config
#	Duplicati/Library/Backend/AlternativeFTP/Duplicati.Library.Backend.AlternativeFTP.csproj
#	Duplicati/Library/Backend/AlternativeFTP/app.config
#	Duplicati/Library/Backend/AlternativeFTP/packages.config
#	Duplicati/Library/Backend/AzureBlob/Duplicati.Library.Backend.AzureBlob.csproj
#	Duplicati/Library/Backend/AzureBlob/packages.config
#	Duplicati/Library/Backend/Backblaze/Duplicati.Library.Backend.Backblaze.csproj
#	Duplicati/Library/Backend/Backblaze/packages.config
#	Duplicati/Library/Backend/Box/Duplicati.Library.Backend.Box.csproj
#	Duplicati/Library/Backend/Box/packages.config
#	Duplicati/Library/Backend/CloudFiles/Duplicati.Library.Backend.CloudFiles.csproj
#	Duplicati/Library/Backend/CloudFiles/app.config
#	Duplicati/Library/Backend/Dropbox/Duplicati.Library.Backend.Dropbox.csproj
#	Duplicati/Library/Backend/Dropbox/packages.config
#	Duplicati/Library/Backend/FTP/Duplicati.Library.Backend.FTP.csproj
#	Duplicati/Library/Backend/FTP/app.config
#	Duplicati/Library/Backend/File/Duplicati.Library.Backend.File.csproj
#	Duplicati/Library/Backend/File/app.config
#	Duplicati/Library/Backend/GoogleServices/Duplicati.Library.Backend.GoogleServices.csproj
#	Duplicati/Library/Backend/GoogleServices/packages.config
#	Duplicati/Library/Backend/HubiC/Duplicati.Library.Backend.HubiC.csproj
#	Duplicati/Library/Backend/Jottacloud/Duplicati.Library.Backend.Jottacloud.csproj
#	Duplicati/Library/Backend/Mega/Duplicati.Library.Backend.Mega.csproj
#	Duplicati/Library/Backend/Mega/packages.config
#	Duplicati/Library/Backend/OAuthHelper/Duplicati.Library.OAuthHelper.csproj
#	Duplicati/Library/Backend/OAuthHelper/packages.config
#	Duplicati/Library/Backend/OneDrive/Duplicati.Library.Backend.OneDrive.csproj
#	Duplicati/Library/Backend/OneDrive/packages.config
#	Duplicati/Library/Backend/OpenStack/Duplicati.Library.Backend.OpenStack.csproj
#	Duplicati/Library/Backend/OpenStack/packages.config
#	Duplicati/Library/Backend/Rclone/Duplicati.Library.Backend.Rclone.csproj
#	Duplicati/Library/Backend/Rclone/packages.config
#	Duplicati/Library/Backend/S3/Duplicati.Library.Backend.S3.csproj
#	Duplicati/Library/Backend/S3/app.config
#	Duplicati/Library/Backend/S3/packages.config
#	Duplicati/Library/Backend/SSHv2/Duplicati.Library.Backend.SSHv2.csproj
#	Duplicati/Library/Backend/SSHv2/packages.config
#	Duplicati/Library/Backend/SharePoint/Duplicati.Library.Backend.SharePoint.csproj
#	Duplicati/Library/Backend/SharePoint/app.config
#	Duplicati/Library/Backend/Sia/Duplicati.Library.Backend.Sia.csproj
#	Duplicati/Library/Backend/Sia/packages.config
#	Duplicati/Library/Backend/TahoeLAFS/Duplicati.Library.Backend.TahoeLAFS.csproj
#	Duplicati/Library/Backend/TahoeLAFS/packages.config
#	Duplicati/Library/Backend/Tardigrade/Duplicati.Library.Backend.Tardigrade.csproj
#	Duplicati/Library/Backend/Tardigrade/packages.config
#	Duplicati/Library/Backend/WEBDAV/Duplicati.Library.Backend.WEBDAV.csproj
#	Duplicati/Library/Backend/WEBDAV/app.config
#	Duplicati/Library/Common/Duplicati.Library.Common.csproj
#	Duplicati/Library/Common/IO/SystemIOWindows.cs
#	Duplicati/Library/Common/app.config
#	Duplicati/Library/Common/packages.config
#	Duplicati/Library/Compression/Duplicati.Library.Compression.csproj
#	Duplicati/Library/Compression/app.config
#	Duplicati/Library/Compression/packages.config
#	Duplicati/Library/DynamicLoader/Duplicati.Library.DynamicLoader.csproj
#	Duplicati/Library/DynamicLoader/app.config
#	Duplicati/Library/Encryption/Duplicati.Library.Encryption.csproj
#	Duplicati/Library/Encryption/packages.config
#	Duplicati/Library/Interface/Duplicati.Library.Interface.csproj
#	Duplicati/Library/Localization/Duplicati.Library.Localization.csproj
#	Duplicati/Library/Localization/packages.config
#	Duplicati/Library/Logging/Duplicati.Library.Logging.csproj
#	Duplicati/Library/Logging/app.config
#	Duplicati/Library/Main/Duplicati.Library.Main.csproj
#	Duplicati/Library/Main/app.config
#	Duplicati/Library/Main/packages.config
#	Duplicati/Library/Modules/Builtin/Duplicati.Library.Modules.Builtin.csproj
#	Duplicati/Library/Modules/Builtin/packages.config
#	Duplicati/Library/SQLiteHelper/Duplicati.Library.SQLiteHelper.csproj
#	Duplicati/Library/Snapshots/Duplicati.Library.Snapshots.csproj
#	Duplicati/Library/Snapshots/app.config
#	Duplicati/Library/Snapshots/packages.config
#	Duplicati/Library/UsageReporter/Duplicati.Library.UsageReporter.csproj
#	Duplicati/Library/UsageReporter/packages.config
#	Duplicati/Library/Utility/Duplicati.Library.Utility.csproj
#	Duplicati/Library/Utility/app.config
#	Duplicati/Library/Utility/packages.config
#	Duplicati/License/Duplicati.License.csproj
#	Duplicati/Server/Duplicati.Server.Serialization/Duplicati.Server.Serialization.csproj
#	Duplicati/Server/Duplicati.Server.Serialization/packages.config
#	Duplicati/Server/Duplicati.Server.csproj
#	Duplicati/Server/app.config
#	Duplicati/Server/packages.config
#	Duplicati/Service/Duplicati.Service.csproj
#	Duplicati/Service/app.config
#	Duplicati/Tools/Duplicati.Tools.csproj
#	Duplicati/UnitTest/Duplicati.UnitTest.csproj
#	Duplicati/UnitTest/RestoreHandlerTests.cs
#	Duplicati/UnitTest/app.config
#	Duplicati/UnitTest/packages.config
#	Duplicati/WindowsService/App.config
#	Duplicati/WindowsService/WindowsService.csproj
#	Tools/SQLiteTool/App.config
#	Tools/SQLiteTool/SQLiteTool.csproj
#	thirdparty/TlsTest/TlsTest.csproj
#	thirdparty/UnixSupport/UnixSupport.csproj
#	thirdparty/mozroots/mozroots.csproj
2020-12-29 09:59:42 -08:00
Thomas Suckow 624a5d698b Add a catch to prevent the database being locked when migrations fail. 2020-12-28 12:18:58 -08:00
Thomas Suckow 7b40e8df20 Fix naming mismatch causing migrations to not be found 2020-12-28 12:17:33 -08:00
Kenneth Hsu 6ddcdfb403 Exclude XDG_CACHE_HOME cache directory on Linux if defined.
This fixes #3633.
2020-12-27 17:21:58 -08:00
Gurthurb 763ae5cb68 Avoid NullReferenceException if an IAsyncResult or WebRequest doesn't contain a WebResponse property
An example of when this happens is when shutting down TrayIcon (using its context menu), at least on Windows. This is quite annoying when debugging with Visual Studio (having the default exception settings).
2020-12-27 22:21:03 +01:00
Kenneth Hsu 534b71e409 Fix bug with repairing multiple missing blocklist hashes.
If there is more than one missing blocklist hash, we must reset the
offset index before copying hashes from the next blocklist into the
buffer.

This fixes #4397.
2020-12-26 21:37:52 -08:00
Kenneth SkovhedeandGitHub e070af3dd1 Merge pull request #4386 from warwickmm/catch_symlink_read_error
Catch and log exceptions encountered when getting symlink target
2020-12-19 15:02:09 +01:00
Kenneth SkovhedeandGitHub ca073a2d0c Merge pull request #4380 from warwickmm/fix_purge_broken_files_dry_run
Fix error encountered during dry-run of purge-broken-files
2020-12-19 14:44:21 +01:00
Kenneth SkovhedeandGitHub 8002d3d225 Merge pull request #4376 from warwickmm/fix_indentation
Fix incorrect or misleading indentations
2020-12-19 14:43:31 +01:00
Kenneth SkovhedeandGitHub ebc30c7f02 Merge pull request #4366 from warwickmm/improve_missing_source_message
Fix misleading error message about missing source path
2020-12-19 14:40:35 +01:00
Kenneth SkovhedeandGitHub 1a2e69fd9f Merge pull request #4357 from warwickmm/fix_run_script_before_remoteurl
Fix issue where remote URL defined using run-script-before was ignored
2020-12-19 14:40:01 +01:00
Kenneth SkovhedeandGitHub 5af8e1c38b Merge pull request #4367 from warwickmm/fix_variable_name
Fix typo in variable name
2020-12-19 14:39:15 +01:00
Kenneth Hsu a39a24beae Catch and log exceptions encountered when getting symlink target.
Since the GetSymlinkTarget method can throw an exception, we should log
the failure case and avoid further processing of the symlink target.

This concerns #2171, which describes issues with symlinks created using
Windows Subsystem for Linux.
2020-12-06 10:08:46 -08:00
Kenneth Hsu 9952babf0b Commit or rollback transaction before beginning new ones.
The PurgeFilesHandler begins new transactions using the same database
connection.  During a dry-run, these transactions are rolled back, and a
subsequent attempt to rollback in the PurgeBrokenFilesHandler then
resulted in an exception.

To avoid this, we perform the rollback in the PurgeBrokenFilesHandler as
soon as we can.

I'm not entirely confident that this is the correct fix, but it appears
to resolve issue #4379.

This fixes #4379.
2020-11-30 19:55:20 -08:00
warwickmmandGitHub 1c3065aa81 Merge pull request #4336 from barfoo4711/master
Add logging statements for issues encountered when restoring empty files.
2020-11-22 10:23:06 -08:00
Kenneth Hsu 47270d1979 Change log level for entry regarding restoring empty files.
Restoring empty files is expected to be quick, so profiling is not
necessary.
2020-11-22 09:05:25 -08:00
Kenneth Hsu 8b010888e2 Make log entries for restore errors consistent.
This concerns #4315.
2020-11-22 09:05:25 -08:00
Kenneth Hsu 31a4eab7e7 Fix casing in log entry. 2020-11-22 09:05:25 -08:00
Kenneth Hsu 5951047ff1 Fix incorrect or misleading indentations.
This also adds braces to clarify scope where beneficial.
2020-11-21 13:58:16 -08:00
Kenneth Hsu 20e599586a Fix typo in variable name. 2020-11-15 12:23:46 -08:00
Kenneth Hsu 14de767738 Fix misleading error message about missing source path.
The source path can be a file, so the error message should not assume
that the path represents a folder.  This also provides the user with
some hints on what steps should be taken to address the issue.

This fixes #3522.
2020-11-15 12:21:05 -08:00
Karen Martikyan 0f138a1cfb default literal fix for build check pass 2020-11-09 22:11:10 +04:00
Karen Martikyan 74ec1e078f Fixed problems while using few different accounts for storing files. 2020-11-09 22:05:43 +04:00
warwickmmandGitHub c7f9f8f556 Merge pull request #4324 from martikyan/feature/telegram_backend
Add support for Telegram channels as a backend destination.
2020-11-08 17:59:37 -08:00
Karen Martikyan 812d698aba Removed SystemExtensions.cs, using Utility.Utility 2020-11-09 00:28:10 +04:00
Karen Martikyan 1feb75002d Fixed bug connected with finding minimal element in an empty list 2020-11-09 00:16:00 +04:00
Karen Martikyan e1b2a190ad Retrieval of epoch moved to extensions 2020-11-08 23:27:29 +04:00
Karen Martikyan 1bc6e20a57 Fixed possible bug connected with retrieval more than 100 messages from a channel 2020-11-08 23:14:39 +04:00
Karen Martikyan 1d106e8163 PR comments fixed: minor changes 2020-11-08 16:50:29 +04:00