Commit Graph
40 Commits
Author SHA1 Message Date
Kenneth Skovhede 1265f88cf8 Fixed disposing the read stream before moving the encrypted database.
Added more context to the default error message when decryption fails.
2024-05-08 12:48:10 +02:00
Kenneth Skovhede 612f657614 Added nullable to SQLiteLoader.
Avoid checking file if no password is supplied.
2024-04-24 11:16:11 +02:00
Kenneth Skovhede 9c0ef09a39 Implemented a built-in decrypt method.
Ported the RC4 algorithm from BouncyCastle.
This fixes #5147
2024-04-23 17:06:32 +02:00
Kenneth Skovhede 9377fdffc1 Unified the way the version is extracted from the SQLite library 2024-03-05 08:55:13 +01:00
Kenneth Skovhede 473c6cbbb8 Merge commit '4f577c65a4d8806f79637c50c21ca3a683c5a07a' into feature/kestrel-avalonia-upgrade 2024-03-04 12:21:53 +01:00
Kenneth Skovhede d3d4fc1434 More cleanup after using Mono.Posix 2024-03-01 14:30:28 +01:00
Thomas Suckow a3bbf63561 Merge remote-tracking branch 'origin/feature/upgrade-to-sdk-style-projects' into feature/net5-kestrel
# Conflicts:
#	.appveyor.yml
#	.github/workflows/tests.yml
#	BuildTools/AutoUpdateBuilder/AutoUpdateBuilder.csproj
#	BuildTools/DependencyFinder/DependencyFinder.csproj
#	BuildTools/GnupgSigningTool/GnupgSigningTool.csproj
#	BuildTools/UpdateVersionStamp/UpdateVersionStamp.csproj
#	Duplicati CommandLine Only.sln
#	Duplicati.Library.RestAPI/RESTMethods/RequestInfo.cs
#	Duplicati.Library.RestAPI/Runner.cs
#	Duplicati.sln
#	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/app.config
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/Assets/icons/normal-warning.png
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/Duplicati.GUI.TrayIcon.csproj
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/Program.cs
#	Duplicati/GUI/Duplicati.GUI.TrayIcon/app.config
#	Duplicati/Library/AutoUpdater/Duplicati.Library.AutoUpdater.csproj
#	Duplicati/Library/Backend/AlternativeFTP/Duplicati.Library.Backend.AlternativeFTP.csproj
#	Duplicati/Library/Backend/AzureBlob/Duplicati.Library.Backend.AzureBlob.csproj
#	Duplicati/Library/Backend/Backblaze/Duplicati.Library.Backend.Backblaze.csproj
#	Duplicati/Library/Backend/Box/Duplicati.Library.Backend.Box.csproj
#	Duplicati/Library/Backend/CloudFiles/Duplicati.Library.Backend.CloudFiles.csproj
#	Duplicati/Library/Backend/Dropbox/Duplicati.Library.Backend.Dropbox.csproj
#	Duplicati/Library/Backend/FTP/Duplicati.Library.Backend.FTP.csproj
#	Duplicati/Library/Backend/File/Duplicati.Library.Backend.File.csproj
#	Duplicati/Library/Backend/GoogleServices/Duplicati.Library.Backend.GoogleServices.csproj
#	Duplicati/Library/Backend/HubiC/Duplicati.Library.Backend.HubiC.csproj
#	Duplicati/Library/Backend/Idrivee2/Duplicati.Library.Backend.Idrivee2.csproj
#	Duplicati/Library/Backend/Jottacloud/Duplicati.Library.Backend.Jottacloud.csproj
#	Duplicati/Library/Backend/Mega/Duplicati.Library.Backend.Mega.csproj
#	Duplicati/Library/Backend/OAuthHelper/Duplicati.Library.OAuthHelper.csproj
#	Duplicati/Library/Backend/OneDrive/Duplicati.Library.Backend.OneDrive.csproj
#	Duplicati/Library/Backend/OpenStack/Duplicati.Library.Backend.OpenStack.csproj
#	Duplicati/Library/Backend/Rclone/Duplicati.Library.Backend.Rclone.csproj
#	Duplicati/Library/Backend/S3/Duplicati.Library.Backend.S3.csproj
#	Duplicati/Library/Backend/SSHv2/Duplicati.Library.Backend.SSHv2.csproj
#	Duplicati/Library/Backend/SharePoint/Duplicati.Library.Backend.SharePoint.csproj
#	Duplicati/Library/Backend/Sia/Duplicati.Library.Backend.Sia.csproj
#	Duplicati/Library/Backend/Storj/Duplicati.Library.Backend.Storj.csproj
#	Duplicati/Library/Backend/TahoeLAFS/Duplicati.Library.Backend.TahoeLAFS.csproj
#	Duplicati/Library/Backend/Tardigrade/Duplicati.Library.Backend.Tardigrade.csproj
#	Duplicati/Library/Backend/TencentCOS/Duplicati.Library.Backend.TencentCOS.csproj
#	Duplicati/Library/Backend/WEBDAV/Duplicati.Library.Backend.WEBDAV.csproj
#	Duplicati/Library/Common/Duplicati.Library.Common.csproj
#	Duplicati/Library/Compression/Duplicati.Library.Compression.csproj
#	Duplicati/Library/DynamicLoader/Duplicati.Library.DynamicLoader.csproj
#	Duplicati/Library/Encryption/Duplicati.Library.Encryption.csproj
#	Duplicati/Library/Interface/Duplicati.Library.Interface.csproj
#	Duplicati/Library/Localization/Duplicati.Library.Localization.csproj
#	Duplicati/Library/Logging/Duplicati.Library.Logging.csproj
#	Duplicati/Library/Main/Duplicati.Library.Main.csproj
#	Duplicati/Library/Modules/Builtin/CheckMonoSSL.cs
#	Duplicati/Library/Modules/Builtin/Duplicati.Library.Modules.Builtin.csproj
#	Duplicati/Library/Modules/Builtin/SendJabberMessage.cs
#	Duplicati/Library/SQLiteHelper/Duplicati.Library.SQLiteHelper.csproj
#	Duplicati/Library/Snapshots/Duplicati.Library.Snapshots.csproj
#	Duplicati/Library/UsageReporter/Duplicati.Library.UsageReporter.csproj
#	Duplicati/Library/Utility/Duplicati.Library.Utility.csproj
#	Duplicati/Library/Utility/HashAlgorithmHelper.cs
#	Duplicati/Library/Utility/Power/WindowsPowerSupplyState.cs
#	Duplicati/License/Duplicati.License.csproj
#	Duplicati/Server/Duplicati.Server.Serialization/Duplicati.Server.Serialization.csproj
#	Duplicati/Server/Duplicati.Server.csproj
#	Duplicati/Server/app.config
#	Duplicati/Service/Duplicati.Service.csproj
#	Duplicati/Service/app.config
#	Duplicati/Tools/Duplicati.Tools.csproj
#	Duplicati/UnitTest/Duplicati.UnitTest.csproj
#	Duplicati/UnitTest/GeneralBlackBoxTesting.cs
#	Duplicati/UnitTest/app.config
#	Duplicati/WindowsService/WindowsService.csproj
#	Installer/debian/docker/debian/control
#	Tools/SQLiteTool/SQLiteTool.csproj
#	Tools/ZipFileDebugger/ZipFileDebugger.csproj
#	guiTests/guiTest.py
#	thirdparty/UnixSupport/UnixSupport.csproj
#	thirdparty/alphavss/Homepage.txt
#	thirdparty/alphavss/License.txt
#	thirdparty/alphavss/licensedata.json
2024-02-29 21:55:17 -08:00
Kenneth Skovhede 40dd3c6816 Updated all license mentions to MIT 2024-02-28 15:45:30 +01:00
gpatel-fr fbbc78619e add custom sqlite pragmas
through environment variable CUSTOMSQLITEOPTIONS_DUPLICATI
2023-03-23 20:25:18 +01:00
Thomas SuckowandKenneth Hsu 060b4886da Just use the nuget version of the sqlite library
This fixes #4526.
2021-06-28 09:52:13 -07:00
Kenneth Hsu 0a91bcf662 Fix path to SQLite.Interop.dll.
This assembly lives in the win32 and win64 subdirectories, and not in
the base path.

This fixes #4093.
2020-02-17 09:34:39 -08:00
verhoek 8bb406cd15 Migrated to use the platform class. 2018-11-02 22:17:16 +01:00
Kenneth Hsu 9e0b031fee Remove unused members. 2018-10-15 21:20:30 -07:00
Kenneth Skovhede 8a00ce5c80 Merge branch 'verhoek-fix/sqlite_file_permissions'
# Conflicts:
#	Duplicati/Library/SQLiteHelper/SQLiteLoader.cs
2018-06-28 10:50:17 +02:00
Kenneth Skovhede db222c1991 Now getting the correct UID and GID 2018-06-28 09:28:14 +02:00
Kenneth Skovhede 5405139729 Replaced compile-time flag and dependency on Mono.Posix with a dynamic call to UnixSupport to defer loading the Mono.Posix library. 2018-06-27 13:36:08 +02:00
verhoek fc5f582800 moved dll filename var to const. Only change permissions on new file creation. 2018-06-23 19:16:12 +02:00
verhoek eabb840a4c Only add mono.posix on non-windows. 2018-06-22 17:21:28 +02:00
verhoek edc866c17e Make Codacy happier. 2018-06-22 09:47:46 +02:00
verhoek 05b2483b4c Added chmoding of sqlite files after opening by sqlite. Removal of some duplication. 2018-06-21 18:58:55 +02:00
verhoek 772eb1f187 Moved method to sqlite loader. 2018-06-21 18:08:52 +02:00
verhoek a456318d86 Undo of restoring TEMP/TMP environment variables. 2018-06-19 08:41:07 +02:00
verhoek 19132abd5f Check mixed mode assembly more explicitly. 2018-06-14 22:00:59 +02:00
verhoek 1cb13cc3cb Reduce indentation. 2018-06-14 21:43:20 +02:00
verhoek 98a4d4c247 Readded environment variables for SQLite on windows. 2018-06-14 21:35:21 +02:00
verhoek 7f06db8e44 Removed non-thread safe PRAGMA temp_store_directory command. 2018-06-11 22:06:06 +02:00
verhoek 544b89b3e2 Removed unused imports. 2018-06-11 19:10:41 +02:00
verhoek e51584e03f Added some logging in case of error. 2018-06-11 19:10:14 +02:00
verhoek fecd5163e5 Single responsibility applied. 2018-06-11 18:50:11 +02:00
verhoek d53a806e04 Removal of obsolete prev variable. 2018-06-11 18:31:39 +02:00
verhoek 784480a340 Removed tempdir environment variable.
Removed unused optional parameter for tempdir in LoadConnection for
LoadConnection and hence avoiding restoring never changed SQLITE_TMPDIR
vars.
2018-06-11 14:40:57 +02:00
Kenneth Skovhede ee64517f7d Removed calls to Console.WriteLine as we may run somewhere without a console. 2018-05-15 11:29:08 +02:00
Kenneth Hsu 056ff3da96 Use built-in method to determine if process is 64-bit. 2018-01-02 19:03:46 -08:00
Kenneth Skovhede f223c38ad7 Updating the SQLite library on Windows to 1.0.104.0.
The Linux version use Mono.Data.SQLite if possible, and otherwise attempts to wrap the system sqlite.so.

This fixes #2144
2017-03-01 11:10:01 +01:00
Kenneth Skovhede c79eaad6a8 Pedantic fix: use single quotes as described in the documentation 2017-01-16 10:28:38 +01:00
Kenneth Skovhede 3b4cd3c9c2 Experiment to set the SQLite temp folder, both through the environment variable and the deprecated pragma statement 2017-01-15 23:09:47 +01:00
Kenneth Skovhede ca5e503680 Fixed loading SQLite with Mono 4.0 and newer 2015-05-04 10:43:24 +02:00
Kenneth Skovhede 8d13e698eb Updated copyright notices 2015-01-20 21:44:52 +01:00
Kenneth Skovhede 968785ce32 Fixed a spelling error 2014-06-18 13:28:12 +02:00
Kenneth Skovhede 4414c2f0dd Moved SQLite related items into a separate project to avoid pulling in the extra content files when using the utility library for mini projects 2014-04-07 11:59:33 +02:00