summaryrefslogtreecommitdiffhomepage
path: root/Storage/Local.hs
Commit message (Collapse)AuthorAge
* updated many dependencies, ghc 8.xJoey Hess2020-02-14
| | | | | | | | | | | | | Updated many dependencies, notably secret-sharing which dropped the dep on polynomial, and so allows building with ghc 8.x. Did not try to support building with older ghc because the semigroup-monid transition would make it nontrivial. Stackage lts-14.25 is a compromise, since the stack shipped in debian (even unstable) is not able to handle newer ones. This commit was sponsored by Eric Drechsel on Patreon.
* Fix --check-server to not fail when the server has not had anything stored ↵Joey Hess2016-10-24
| | | | | | | | on it yet. Threw an exception because the share directory was not created yet. This commit was sponsored by Anthony DeRobertis on Patreon.
* test writability with a long filenameJoey Hess2016-10-06
|
* Check if --store-local directory is writable.Joey Hess2016-10-06
| | | | | | | | | | | | | | | | | | | | If run with --totalshares larger than the number of servers, and the --store-local directory is not writable, this causes keysafe to throw out the unwritable directory and so error out early due to their not being enough storage locations. That's better than the old behavior, which was to try to use the --store-local directory, fail and so proceed to storing the share on a server. That would eventually fail with "no storage locations" when it runs out of servers. That was bad, because shares were uploaded to servers, but perhaps not enough for restore to work, and a new name/othername would be needed to re-run the backup. This is not a perfect fix; if the --store-local directory is writable at first but for some reason the write of the share to it later fails, the situation described above still happens. This commit was sponsored by Jochen Bartl on Patreon.
* New --add-storage-directory and --add-server optionsJoey Hess2016-10-06
| | | | | | | | * New --add-storage-directory and --add-server options, which can be used to make keysafe backup/restore using additional locations. * Removed --store-local option; use --add-storage-directory instead. This commit was sponsored by Thomas Hochstein on Patreon.
* move level from Server to StorageJoey Hess2016-10-06
| | | | | | | This allows local storage locations to have levels too, and also get shuffled nicely. This commit was sponsored by Ethan Aubin.
* avoid crashing when moving from local storage directory that does not existJoey Hess2016-09-22
|
* copy in Utility.UserInfo from git-annexJoey Hess2016-09-22
| | | | | This is worth doing to support falling back to HOME on systems using LDAP or NIS where getpwent fails.
* Added --backup-server and --restore-serverJoey Hess2016-09-15
| | | | | | To aid in backing up keysafe servers with minimal information leakage. This commit was sponsored by Andrea Rota.
* Store information about backed up keys in ~/.keysafe/backup.logJoey Hess2016-09-14
| | | | | | | | This can be deleted by the user at any time, but it's useful in case a server is known to be compromised, or a problem is found with keysafe's implementation that makes a backup insecure. This commit was sponsored by Nick Daly on Patreon.
* Fix --uploadqueued bug that prevented deletion of local queued file.Joey Hess2016-09-14
|
* Warn when --uploadqueued fails to upload to servers.Joey Hess2016-09-14
|
* Warn when uploads fail and are put in the upload queue.Joey Hess2016-09-14
|
* implemented dynamic rate limitingJoey Hess2016-09-13
|
* more refactorJoey Hess2016-09-12
|
* added --store-directoryJoey Hess2016-08-31
|
* Added basic test suite.Joey Hess2016-08-30
|
* belt and suspenders path injection checkJoey Hess2016-08-28
| | | | | | | | | This does not seem to be necessary for the HTTP server, because servant parses the StorableObjectIdent out of query path, so it can't contain `/`. But, what if the HTTP server were running on windows? Then, `\` could be embedded in the StorableObjectIdent or perhaps a drive letter, etc. So, best to have a second level of defense against path injection.
* rename shard -> shareJoey Hess2016-08-19
| | | | This makes it clearer that it's not a chunk of data, but a Shamir share.
* minor prompt flowJoey Hess2016-08-18
|
* untested moving of upload queues on to serversJoey Hess2016-08-18
| | | | | | | | | | | There needs to be a 1:1 mapping between upload queues and servers, otherwise using the upload queue risks two shards for the same object being uploaded to the same server. Also, fixed storeShards to give up on StoreAlreadyExists, rather than trying another storage location. Otherwise, on a name collision, the shards would be rejected by the servers, and be stored to their upload queues.
* add support for multiple storage locattionsJoey Hess2016-08-18
| | | | also, server upload queues in ~/.keysafe
* save restored secret key to gpg or fileJoey Hess2016-08-17
|
* store files mode 400Joey Hess2016-08-17
|
* make storage to use configurable on command lineJoey Hess2016-08-17