Update issue #323
Status: Fixed
I see the problem, in SSHUI.cs line 107, the keyfile option is always set, even if it is empty.
I have added checks to detect the empty string in the UI and the backend itself.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@639 59da171f-624f-0410-aa54-27559c288bec
Status: Fixed
There is now a Tahoe-LAFS backend option.
It is quite new, so obviously it is fairly untested in real life.
It passes all unittests, and is largely based on the WEBDAV backend which as seen some action.
I will put up a preview build with Tahoe-LAFS support soon.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@623 59da171f-624f-0410-aa54-27559c288bec
I have now added preliminary support for keyfiles under SSH.
For the time being it only supports OpenSSH private key files, and only unencrypted or tripple-DES encrypted ones.
This is a limitation of the SharpSSH library, which is based on an old JSCH implementation with this limitation.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@622 59da171f-624f-0410-aa54-27559c288bec
Status: Fixed
Yes, nicely spotted, thanks for reporting.
It seems that the settings was actually saved and applied,
but just didn't show up, so a re-save would clear it.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@594 59da171f-624f-0410-aa54-27559c288bec
I certainly don't mind fixing minor issues.
Spelling errors have a tendency to make the product look
incomplete, so I appreciate spelling error reports.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@590 59da171f-624f-0410-aa54-27559c288bec
Status: Fixed
The logic was attempting to prevent a case where the backup was scheduled to run and "Run backup now" was checked.
In this special case, the "Run backup now" does nothing because the backup will run twice otherwise.
The logic was a bit flawed, so based on some various settings it would detect that it was scheduled to run,
while it was not.
Thanks to your fine description, I was able to reproduce easily and fix it.
With the regards to the other error message, I have reproduced it by doing the following without restarting:
1) create the backup
2) edit the backup
3) delete the backup
I will create a new issue for it, but the bug is deep in the database abstraction layer,
so it is pretty hard to debug.
Update issue #227
Status: Fixed
Now correctly removes the deleted task from the scheduler and updates the display.
I also managed to get a slight speedup on the display update.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@572 59da171f-624f-0410-aa54-27559c288bec
Previously some backends autocreated a missing folder, and some threw an exception.
The new standard is that all backends throw the FolderMissingException on all access (except delete).
This means that the Test() and List() methods are now the same for all stock backends.
Third-party applications that use the backends should implement custom logic to auto-create the folders,
when the FolderMissingException is encountered.
Duplicati auto-creates missing folders, but this can be toggled through the new flag --disable-autocreate-folders.
In case the auto-create fails to detect a missing folder, there is now a "create-folder" action in the commandline version.
Update issue #102
Status: Fixed
The IBackend_v2 interface has the CreateFolder and Test methods.
The CreateFolder is exposed to the commandline interface with the action create-folder.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@558 59da171f-624f-0410-aa54-27559c288bec
Fixed a protential race condition with warning messages and file counts (cosmetic only) when using async transfers.
Spelling correction, Seperator -> Separator.
Changed so a restore operation can also supply advanced options.
Changed the format of timestamps in filenames to follow the Duplicity convention, which removes the need for --time-separator and --use-short-filenames.
Moved the URL utility into Core, to avoid compilation errors with Monodevelop.
Reorganized the runner to better support the LiveControls on all operations rather than only for backup/restore.
Update issue #210
Status: Fixed
I have now changed the time format to follow the Duplicity naming convention.
This means that all filenames are now generated with the time set as "yyyyMMddTHHmmssZ".
This format is more portable across all platforms, and easily sortable/readable.
The drawback is that the Z indicates UTC time, so if one looks at the filenames,
the times are not local. The motivation for this is to avoid trouble
with daylight savings time offsets.
There is full backwards compatibility as long as backups have not used more than
one character for --time-separator (only possible via commandline).
This new format means that the options --time-separator and --use-short-filenames
are now deprecated and removed from the user interface. It is possible to
access them from the advanced options page, along with the --use-old-filenames option.
If anyone needs these options for some reason, let me know, otherwise they will be removed
in a later version.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@523 59da171f-624f-0410-aa54-27559c288bec
Status: Fixed
After selecting a stored AWS ID for S3, the password is masked and cannot be revealed.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@518 59da171f-624f-0410-aa54-27559c288bec
Status: Fixed
I have now implemented a password protection control.
You can now only view passwords when you enter them.
After this, you may reset the passwords, by entering a
new one, but you cannot read the existing passwords.
To protect against people reading the database,
which contains the passwords in clear text, the
database is now encrypted by using the standard
SQLite encryption method. This is different
than what I proposed, but is a much stronger
protection than merely scrambling the passwords,
and also protects all information (servername, etc).
It works by setting an environment variable
called DUPLICATI_DB_KEY. When no password
is set, Duplicati will use the key "Duplicati_Key_42",
ensuring that all databases are encrypted by default.
Using a pre-defined publicly known key is obviously
not a strong protection, but it protects from casual
users attempting to browse the database, and it also
protects from string scanners that scan a harddisk
for possible passwords.
On the first startup, Duplicati will encrypt the database,
using the mentioned key. You may want to delete any backup
databases that are placed in the same folder as the database.
Should you wish to decrypt the database, you can start
Duplicati.exe with the commandline option "--unencrypted-database".
This will use the current key to decrypt the database, and save it
without encryption.
Should you wish to change the database password, simply decrypt the
database, then change the password via the environment variable,
and start Duplicati.exe as normal.
The SQLite documentation for the feature is here:
http://www.hwaci.com/sw/sqlite/see.html
Unfortunately, it does not seem as if any
of the free SQLite tools supports this.
The SQLite library found on Ubuntu
does not support encryption, so I have disabled
this feature by default on Linux.
If a user has a special compiled version
of SQLite, they may use the environment
variables as mentioned above.
I will write this information into a wiki
page as soon asap.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@498 59da171f-624f-0410-aa54-27559c288bec
Status: Fixed
I have now fixed it so the UI sets the required option automatically.
I also fixed a minor typo "sfpt" -> "sftp".
git-svn-id: https://duplicati.googlecode.com/svn/trunk@486 59da171f-624f-0410-aa54-27559c288bec
Fixed issue #215.
If the user chooses EU buckets, bucketnames that are not valid hostname labels will be rejected.
If the user does not choose EU buckets, a warning is displayed for bucketnames that are not valid hostname labels, and the setup is switched to the path-style calling method.
Fixed issue #214.
There were multiple issues with entering a bucket/folder type path, those should now be resolved.
Fixed issue #212.
The UI and commandline now supports Reduced Redundancy Storage.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@430 59da171f-624f-0410-aa54-27559c288bec
This was based on the idea that the interfaces should remain static.
I hope this change is enough to ensure stable interfaces until release 1.2.
Overview of changes:
Moved all interfaces into the same dll.
Encryption and compression is now plugable modules, just as the backends.
Encryption/compression can now register an UI.
Encryption now uses AESCrypt as a default.
GPG does not default to using the --armor option.
Added support for generic modules, but none are written yet.
Added support for plugable settings pages in the "Options" dialog.
Fixed issue #148.
Duplicati now uses AESCrypt as the default encryption format.
Fixed issue #199.
GPG now supports custom commandline options.
Fixed issue #207.
Encryption modules are now plugable.
Fixed issue #118.
S3 credentials are now stored.
Fixed issue #151.
Backends can now register system wide options.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@427 59da171f-624f-0410-aa54-27559c288bec
Fixed issue #182.
Fixed an error with the commandline version reported in the forum.
Added improved error output.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@417 59da171f-624f-0410-aa54-27559c288bec
I am unable to reproduce the error with the "test connection" that you describe.
Was it with a particular bucket/folder name?
I have also added some logic to ensure that it does not repeatedly ask to prefix the username.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@406 59da171f-624f-0410-aa54-27559c288bec
Also changed the default url behavior to use api.mosso.com as the hostname to avoid problems with container names that are not valid hostnames.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@405 59da171f-624f-0410-aa54-27559c288bec
Added a warning and auto-fix method to remove leading slashes from the path part of the WEBDAV UI.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@396 59da171f-624f-0410-aa54-27559c288bec
This was a timeout bug that was triggered after 100 seconds.
Also added a timeout control to the WEBDAV and FTP backends, in case they have the same bug.
Made a few string localizable in the CloudFiles backend.
Added the code to do local MD5 generation, but commented it out as there are issues with this.
Added Duplicati version string to the WEBDAV backend user agent identification.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@394 59da171f-624f-0410-aa54-27559c288bec
Fixed an issue with + in filenames.
Added spaces and + to the ExtendedChars of the backend tester.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@390 59da171f-624f-0410-aa54-27559c288bec
Fixed various items where ".Peek() < 0" was used instead of ".EndOfStream".
Added transfer time to the SSH List command, to support larger lists.
git-svn-id: https://duplicati.googlecode.com/svn/trunk@372 59da171f-624f-0410-aa54-27559c288bec