dedup, branch HEADdeduplicating backup program
b3f176118aa23e15a340ee20f4758175a64c92402019-05-23T23:57:55Z2019-05-23T23:57:55ZUpdate TODOsinsin@2f30.orgcommit b3f176118aa23e15a340ee20f4758175a64c9240
parent 35bc7bca9bd226dd2c81d69adf19201fa54cbc05
Author: sin <sin@2f30.org>
Date: Fri, 24 May 2019 02:57:55 +0300
Update TODO
35bc7bca9bd226dd2c81d69adf19201fa54cbc052019-05-23T14:02:05Z2019-05-23T14:02:05ZForgot to update CHANGELOG, aw wellsinsin@2f30.orgcommit 35bc7bca9bd226dd2c81d69adf19201fa54cbc05
parent edba7a881758ccfa9cd11ba4a4b60fe83446701e
Author: sin <sin@2f30.org>
Date: Thu, 23 May 2019 17:02:05 +0300
Forgot to update CHANGELOG, aw well
edba7a881758ccfa9cd11ba4a4b60fe83446701e2019-05-22T10:40:37Z2019-05-22T10:40:37ZReword comment to make it consistentsinsin@2f30.orgcommit edba7a881758ccfa9cd11ba4a4b60fe83446701e
parent 03322c1165cff33cfc0f4cd4a663f45d7b9d0211
Author: sin <sin@2f30.org>
Date: Wed, 22 May 2019 13:40:37 +0300
Reword comment to make it consistent
03322c1165cff33cfc0f4cd4a663f45d7b9d02112019-05-22T10:39:01Z2019-05-22T10:39:01ZFix commentsinsin@2f30.orgcommit 03322c1165cff33cfc0f4cd4a663f45d7b9d0211
parent 72f9fa268e73eed07468230e6ba030ae340e0f3e
Author: sin <sin@2f30.org>
Date: Wed, 22 May 2019 13:39:01 +0300
Fix comment
72f9fa268e73eed07468230e6ba030ae340e0f3e2019-05-21T12:19:32Z2019-05-21T12:22:13ZRemoved trailing tabEddie Thiedaeddie.thieda@gmail.comcommit 72f9fa268e73eed07468230e6ba030ae340e0f3e
parent 399913dfb11118676faa5baa979ed62369a4de3e
Author: Eddie Thieda <eddie.thieda@gmail.com>
Date: Tue, 21 May 2019 08:19:32 -0400
Removed trailing tab
399913dfb11118676faa5baa979ed62369a4de3e2019-05-21T11:42:53Z2019-05-21T11:42:53ZFix type mismatchsinsin@2f30.orgcommit 399913dfb11118676faa5baa979ed62369a4de3e
parent 9155c685452c0b123472016b01acda1d2fedd1eb
Author: sin <sin@2f30.org>
Date: Tue, 21 May 2019 14:42:53 +0300
Fix type mismatch
9155c685452c0b123472016b01acda1d2fedd1eb2019-05-21T11:40:58Z2019-05-21T11:40:58ZRemove some magic numberssinsin@2f30.orgcommit 9155c685452c0b123472016b01acda1d2fedd1eb
parent 51368350b7b7c7a23fdc51cc86906c81572f9179
Author: sin <sin@2f30.org>
Date: Tue, 21 May 2019 14:40:58 +0300
Remove some magic numbers
51368350b7b7c7a23fdc51cc86906c81572f91792019-05-21T11:32:59Z2019-05-21T11:32:59ZAdd some comments to bcompresssinsin@2f30.orgcommit 51368350b7b7c7a23fdc51cc86906c81572f9179
parent f3cfc694a10d1cd07ad4ddc04806e3819adfa510
Author: sin <sin@2f30.org>
Date: Tue, 21 May 2019 14:32:59 +0300
Add some comments to bcompress
f3cfc694a10d1cd07ad4ddc04806e3819adfa5102019-05-21T11:10:15Z2019-05-21T11:10:15ZRevert "Store key in hex format"sinsin@2f30.orgcommit f3cfc694a10d1cd07ad4ddc04806e3819adfa510
parent bf808eff120238a6a3ef7cc243469143a7f8c40b
Author: sin <sin@2f30.org>
Date: Tue, 21 May 2019 12:10:15 +0100
Revert "Store key in hex format"
This reverts commit bf808eff120238a6a3ef7cc243469143a7f8c40b.
bf808eff120238a6a3ef7cc243469143a7f8c40b2019-05-21T10:55:55Z2019-05-21T10:57:56ZStore key in hex formatsinsin@2f30.orgcommit bf808eff120238a6a3ef7cc243469143a7f8c40b
parent b7ba4766399045f736c536b1a9b17c26e181cfa8
Author: sin <sin@2f30.org>
Date: Tue, 21 May 2019 13:55:55 +0300
Store key in hex format
b7ba4766399045f736c536b1a9b17c26e181cfa82019-05-21T08:45:14Z2019-05-21T09:38:28ZModified wordingEddie Thiedaeddie.thieda@gmail.comcommit b7ba4766399045f736c536b1a9b17c26e181cfa8
parent 885ea6fad001f60ad32b77e0e830c5339561530c
Author: Eddie Thieda <eddie.thieda@gmail.com>
Date: Tue, 21 May 2019 04:45:14 -0400
Modified wording
885ea6fad001f60ad32b77e0e830c5339561530c2019-05-20T11:10:50Z2019-05-20T11:10:50ZUpdate TODOsinsin@2f30.orgcommit 885ea6fad001f60ad32b77e0e830c5339561530c
parent 752ddb3633585022f6542dd5ba7ef6c34432d6fa
Author: sin <sin@2f30.org>
Date: Mon, 20 May 2019 14:10:50 +0300
Update TODO
752ddb3633585022f6542dd5ba7ef6c34432d6fa2019-05-20T11:01:09Z2019-05-20T11:03:16ZRename bcompat to compatsinsin@2f30.orgcommit 752ddb3633585022f6542dd5ba7ef6c34432d6fa
parent 494ad19401db718a4806e5cf65f6bb6916927bc0
Author: sin <sin@2f30.org>
Date: Mon, 20 May 2019 14:01:09 +0300
Rename bcompat to compat
This file will be used to implement more compat interfaces in the
future (pledge and unveil).
494ad19401db718a4806e5cf65f6bb6916927bc02019-05-20T10:57:55Z2019-05-20T10:57:55ZFix dup-init so the repo can be created in the current directorysinsin@2f30.orgcommit 494ad19401db718a4806e5cf65f6bb6916927bc0
parent 05438fee31a525193b6f776bfb2962e7c0275596
Author: sin <sin@2f30.org>
Date: Mon, 20 May 2019 13:57:55 +0300
Fix dup-init so the repo can be created in the current directory
05438fee31a525193b6f776bfb2962e7c02755962019-05-20T10:39:24Z2019-05-20T10:39:24ZFix grammarsinsin@2f30.orgcommit 05438fee31a525193b6f776bfb2962e7c0275596
parent da4b4d0cdd9238ff2993c3957d0d16a2c9718ae9
Author: sin <sin@2f30.org>
Date: Mon, 20 May 2019 13:39:24 +0300
Fix grammar
da4b4d0cdd9238ff2993c3957d0d16a2c9718ae92019-05-20T10:18:26Z2019-05-20T10:18:26ZUse uchar instead of uint8_tsinsin@2f30.orgcommit da4b4d0cdd9238ff2993c3957d0d16a2c9718ae9
parent 97d304696333ad9b25d52e7cd9e02e7e2eee6f64
Author: sin <sin@2f30.org>
Date: Mon, 20 May 2019 13:18:26 +0300
Use uchar instead of uint8_t
97d304696333ad9b25d52e7cd9e02e7e2eee6f642019-05-20T10:16:25Z2019-05-20T10:16:25ZUpdate DESIGNsinsin@2f30.orgcommit 97d304696333ad9b25d52e7cd9e02e7e2eee6f64
parent 65426c4dfc99f803c00d3c7bdbccdfc7f38fb19c
Author: sin <sin@2f30.org>
Date: Mon, 20 May 2019 13:16:25 +0300
Update DESIGN
65426c4dfc99f803c00d3c7bdbccdfc7f38fb19c2019-05-20T10:07:56Z2019-05-20T10:07:56ZFix typo in dup-init.1sinsin@2f30.orgcommit 65426c4dfc99f803c00d3c7bdbccdfc7f38fb19c
parent 7dbf6de1389b8b7b56017da2ff20fcdfccb40ca4
Author: sin <sin@2f30.org>
Date: Mon, 20 May 2019 13:07:56 +0300
Fix typo in dup-init.1
7dbf6de1389b8b7b56017da2ff20fcdfccb40ca42019-05-20T10:02:05Z2019-05-20T10:02:05ZNo need to call strerror() for malloc()/calloc() failuresinsin@2f30.orgcommit 7dbf6de1389b8b7b56017da2ff20fcdfccb40ca4
parent 4254c18ccefe1aec0ed1bae902202e0ca5f8ad10
Author: sin <sin@2f30.org>
Date: Mon, 20 May 2019 13:02:05 +0300
No need to call strerror() for malloc()/calloc() failure
4254c18ccefe1aec0ed1bae902202e0ca5f8ad102019-05-19T18:30:52Z2019-05-19T18:30:52ZCall sodium_init in beopen()sinsin@2f30.orgcommit 4254c18ccefe1aec0ed1bae902202e0ca5f8ad10
parent 0bf61ad5efda6cffccf715d49f109d136c74931e
Author: sin <sin@2f30.org>
Date: Sun, 19 May 2019 21:30:52 +0300
Call sodium_init in beopen()
0bf61ad5efda6cffccf715d49f109d136c74931e2019-05-19T17:18:04Z2019-05-19T17:18:17ZRemove unused vars, thanks Evil_Bob!sinsin@2f30.orgcommit 0bf61ad5efda6cffccf715d49f109d136c74931e
parent 877bf7ca5529c15deba0714df94d534e1e25e430
Author: sin <sin@2f30.org>
Date: Sun, 19 May 2019 20:18:04 +0300
Remove unused vars, thanks Evil_Bob!
877bf7ca5529c15deba0714df94d534e1e25e4302019-05-19T16:56:56Z2019-05-19T16:56:56ZInitialize sodium before generating random bytessinsin@2f30.orgcommit 877bf7ca5529c15deba0714df94d534e1e25e430
parent eba08d1ff6618f1b3277dea6990a0afde7a0bc11
Author: sin <sin@2f30.org>
Date: Sun, 19 May 2019 19:56:56 +0300
Initialize sodium before generating random bytes
eba08d1ff6618f1b3277dea6990a0afde7a0bc112019-05-19T16:26:12Z2019-05-19T16:30:17ZAdd support for storing/retrieving an encrypted seedsinsin@2f30.orgcommit eba08d1ff6618f1b3277dea6990a0afde7a0bc11
parent 042e687f46e7c334def143a387c332e6884cd078
Author: sin <sin@2f30.org>
Date: Sun, 19 May 2019 19:26:12 +0300
Add support for storing/retrieving an encrypted seed
The seed is XOR-ed with the initial state of the chunker to mitigate
against fingerprinting attacks.
042e687f46e7c334def143a387c332e6884cd0782019-05-19T15:52:14Z2019-05-19T15:53:25ZXor the given seed into the buzhash tablesinsin@2f30.orgcommit 042e687f46e7c334def143a387c332e6884cd078
parent c86adacd4c9ec47d68823fbb768ec3fc7e5c23c0
Author: sin <sin@2f30.org>
Date: Sun, 19 May 2019 18:52:14 +0300
Xor the given seed into the buzhash table
This is the first step to try and mitigate against fingerprinting
attacks. The current code does not have any effect on the initial
state of the buzhash algorithm.
c86adacd4c9ec47d68823fbb768ec3fc7e5c23c02019-05-17T13:41:53Z2019-05-17T13:42:19ZNo need to set csize to 0 when the call failssinsin@2f30.orgcommit c86adacd4c9ec47d68823fbb768ec3fc7e5c23c0
parent 7102fc953fa622740207fbe9bce945d33aa9105e
Author: sin <sin@2f30.org>
Date: Fri, 17 May 2019 16:41:53 +0300
No need to set csize to 0 when the call fails
The caller should not inspect the argument if the call fails.
7102fc953fa622740207fbe9bce945d33aa9105e2019-05-17T11:38:43Z2019-05-17T11:38:43ZUse param.key directly, no need to keep a copysinsin@2f30.orgcommit 7102fc953fa622740207fbe9bce945d33aa9105e
parent 86e037e9f1ee5d564daa67fae8f4cc6fd8bc19d6
Author: sin <sin@2f30.org>
Date: Fri, 17 May 2019 14:38:43 +0300
Use param.key directly, no need to keep a copy
86e037e9f1ee5d564daa67fae8f4cc6fd8bc19d62019-05-17T11:30:43Z2019-05-17T11:30:43ZCheck a key is provided when snapshots are encryptedsinsin@2f30.orgcommit 86e037e9f1ee5d564daa67fae8f4cc6fd8bc19d6
parent ba06cd1fc2b7c9c50147f5af8898e524cfb741b6
Author: sin <sin@2f30.org>
Date: Fri, 17 May 2019 14:30:43 +0300
Check a key is provided when snapshots are encrypted
ba06cd1fc2b7c9c50147f5af8898e524cfb741b62019-05-17T11:28:53Z2019-05-17T11:29:09ZUse a type field in snap.csinsin@2f30.orgcommit ba06cd1fc2b7c9c50147f5af8898e524cfb741b6
parent 17e33eb2f548925c5a1fead6c2bfe65f6f16cade
Author: sin <sin@2f30.org>
Date: Fri, 17 May 2019 14:28:53 +0300
Use a type field in snap.c
Similar to how it is done for the compression/encryption modules.
17e33eb2f548925c5a1fead6c2bfe65f6f16cade2019-05-16T13:48:14Z2019-05-16T13:48:14ZDefine BSIZEAVG in the same way as it is done for MIN/MAXsinsin@2f30.orgcommit 17e33eb2f548925c5a1fead6c2bfe65f6f16cade
parent 08600b08eec99d0c6fce2749ade192cadd4a0ba5
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 14:48:14 +0100
Define BSIZEAVG in the same way as it is done for MIN/MAX
08600b08eec99d0c6fce2749ade192cadd4a0ba52019-05-16T13:43:35Z2019-05-16T13:43:35ZExplain the chunker a bit in the DESIGN documentsinsin@2f30.orgcommit 08600b08eec99d0c6fce2749ade192cadd4a0ba5
parent af4f203b687f0d19bb16036c882fbf2dad994393
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 16:43:35 +0300
Explain the chunker a bit in the DESIGN document
af4f203b687f0d19bb16036c882fbf2dad9943932019-05-16T13:33:53Z2019-05-16T13:33:53ZUpdate TODOsinsin@2f30.orgcommit af4f203b687f0d19bb16036c882fbf2dad994393
parent 7033c4f6f1f3be92781ded542ba67e5c1a1b0b27
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 16:33:53 +0300
Update TODO
7033c4f6f1f3be92781ded542ba67e5c1a1b0b272019-05-16T11:42:29Z2019-05-16T11:42:29ZFree buf earlysinsin@2f30.orgcommit 7033c4f6f1f3be92781ded542ba67e5c1a1b0b27
parent ca6087f9ea02fe655dfb1db5ef4bbcb45528baa5
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 14:42:29 +0300
Free buf early
ca6087f9ea02fe655dfb1db5ef4bbcb45528baa52019-05-16T11:40:28Z2019-05-16T11:40:28ZReturn 1 if a block hash mismatch is detectedsinsin@2f30.orgcommit ca6087f9ea02fe655dfb1db5ef4bbcb45528baa5
parent fecf79960e6acd97640b944b9b7d653e5c2b5a52
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 12:40:28 +0100
Return 1 if a block hash mismatch is detected
fecf79960e6acd97640b944b9b7d653e5c2b5a522019-05-16T11:39:42Z2019-05-16T11:39:42ZRevert "Fold checks into one"sinsin@2f30.orgcommit fecf79960e6acd97640b944b9b7d653e5c2b5a52
parent 5064abfd02125645e6099f376feca283e1edd745
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 12:39:42 +0100
Revert "Fold checks into one"
This reverts commit 5064abfd02125645e6099f376feca283e1edd745.
5064abfd02125645e6099f376feca283e1edd7452019-05-16T11:36:11Z2019-05-16T11:36:11ZFold checks into onesinsin@2f30.orgcommit 5064abfd02125645e6099f376feca283e1edd745
parent 7d0f66f519a36d47db6919100238e74a5eeba713
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 14:36:11 +0300
Fold checks into one
7d0f66f519a36d47db6919100238e74a5eeba7132019-05-16T11:34:36Z2019-05-16T11:34:36ZFix commentsinsin@2f30.orgcommit 7d0f66f519a36d47db6919100238e74a5eeba713
parent 61ad5371e4d375a6b10669b495a55f2bcbb99b2d
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 14:34:36 +0300
Fix comment
61ad5371e4d375a6b10669b495a55f2bcbb99b2d2019-05-16T11:30:46Z2019-05-16T11:30:46ZUpdate CHANGELOGsinsin@2f30.orgcommit 61ad5371e4d375a6b10669b495a55f2bcbb99b2d
parent 444b9123043fedf7fffd116093babde7937cb52f
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 14:30:46 +0300
Update CHANGELOG
444b9123043fedf7fffd116093babde7937cb52f2019-05-16T11:19:41Z2019-05-16T11:19:41ZUpdate DESIGNsinsin@2f30.orgcommit 444b9123043fedf7fffd116093babde7937cb52f
parent fcc899cbc1d3c835f1b28b9702e6965505ac8d66
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 14:19:41 +0300
Update DESIGN
fcc899cbc1d3c835f1b28b9702e6965505ac8d662019-05-16T11:09:05Z2019-05-16T11:09:05ZLoad key before repo statesinsin@2f30.orgcommit fcc899cbc1d3c835f1b28b9702e6965505ac8d66
parent 95c553d5f0552ea0b2d2ec7937bf31336629c0d3
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 14:09:05 +0300
Load key before repo state
It might be needed in the repo state handling.
95c553d5f0552ea0b2d2ec7937bf31336629c0d32019-05-16T11:04:58Z2019-05-16T11:04:58ZStyle fixsinsin@2f30.orgcommit 95c553d5f0552ea0b2d2ec7937bf31336629c0d3
parent 5bb4a9db996f3e7265fe0588fa03125a28cd9051
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 14:04:58 +0300
Style fix
5bb4a9db996f3e7265fe0588fa03125a28cd90512019-05-16T10:58:55Z2019-05-16T10:58:55Zencrypt: Use a switch instead of an if/elseif constructsinsin@2f30.orgcommit 5bb4a9db996f3e7265fe0588fa03125a28cd9051
parent e401f4cd871cf10bbcaf31eee682c3ae34454b5d
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 13:58:55 +0300
encrypt: Use a switch instead of an if/elseif construct
e401f4cd871cf10bbcaf31eee682c3ae34454b5d2019-05-16T10:51:28Z2019-05-16T10:53:34Zcompress: Use a switch instead of an if/elseif constructsinsin@2f30.orgcommit e401f4cd871cf10bbcaf31eee682c3ae34454b5d
parent 481193d0d350c006ac751b4d36eb3a27baafb0a0
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 13:51:28 +0300
compress: Use a switch instead of an if/elseif construct
Do not check for invalid compression type in put()/get() as this is
already checked in creat()/open().
481193d0d350c006ac751b4d36eb3a27baafb0a02019-05-16T10:46:02Z2019-05-16T10:46:02ZMake creat()/open() param handling the samesinsin@2f30.orgcommit 481193d0d350c006ac751b4d36eb3a27baafb0a0
parent 0b82fde85e265955b50ed2a97109c2ca0af2b5ca
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 13:46:02 +0300
Make creat()/open() param handling the same
0b82fde85e265955b50ed2a97109c2ca0af2b5ca2019-05-16T10:38:15Z2019-05-16T10:38:15ZReorder param checkssinsin@2f30.orgcommit 0b82fde85e265955b50ed2a97109c2ca0af2b5ca
parent 2df09c44626321bba7b319ea5dad5f5dc0475e71
Author: sin <sin@2f30.org>
Date: Thu, 16 May 2019 13:38:15 +0300
Reorder param checks
2df09c44626321bba7b319ea5dad5f5dc0475e712019-05-15T11:49:33Z2019-05-15T11:49:33ZAdd comment for state.csinsin@2f30.orgcommit 2df09c44626321bba7b319ea5dad5f5dc0475e71
parent a569b0ac6786bf6fc68a65ae6159d0e8ac90bb37
Author: sin <sin@2f30.org>
Date: Wed, 15 May 2019 14:49:33 +0300
Add comment for state.c
a569b0ac6786bf6fc68a65ae6159d0e8ac90bb372019-05-14T11:31:34Z2019-05-14T11:31:47ZFix type warning, switch to void *sinsin@2f30.orgcommit a569b0ac6786bf6fc68a65ae6159d0e8ac90bb37
parent a418e1982015c28bdca5d2ea67976c0e40f053ac
Author: sin <sin@2f30.org>
Date: Tue, 14 May 2019 12:31:34 +0100
Fix type warning, switch to void *
a418e1982015c28bdca5d2ea67976c0e40f053ac2019-05-14T11:28:08Z2019-05-14T11:28:08ZStyle fixsinsin@2f30.orgcommit a418e1982015c28bdca5d2ea67976c0e40f053ac
parent 1d2884eaed1369060c8fa872fc15b0c4dfefa090
Author: sin <sin@2f30.org>
Date: Tue, 14 May 2019 14:28:08 +0300
Style fix
1d2884eaed1369060c8fa872fc15b0c4dfefa0902019-05-14T11:12:04Z2019-05-14T11:12:04ZStyle fixsinsin@2f30.orgcommit 1d2884eaed1369060c8fa872fc15b0c4dfefa090
parent a4b92b7d3ace3ec50598726b3879ead44864f4e1
Author: sin <sin@2f30.org>
Date: Tue, 14 May 2019 14:12:04 +0300
Style fix
a4b92b7d3ace3ec50598726b3879ead44864f4e12019-05-14T11:01:55Z2019-05-14T11:01:55ZRename fn to loadmdsinsin@2f30.orgcommit a4b92b7d3ace3ec50598726b3879ead44864f4e1
parent da5196be59c4f03fd81127900dd1b1afdbdfa34f
Author: sin <sin@2f30.org>
Date: Tue, 14 May 2019 14:01:55 +0300
Rename fn to loadmd
da5196be59c4f03fd81127900dd1b1afdbdfa34f2019-05-14T10:33:06Z2019-05-14T11:00:18ZSplit initmdhead() into plaintext/encrypted variantssinsin@2f30.orgcommit da5196be59c4f03fd81127900dd1b1afdbdfa34f
parent 1c0530ef5bf190a62ca8ce7c9b3ae14702b44a7f
Author: sin <sin@2f30.org>
Date: Tue, 14 May 2019 13:33:06 +0300
Split initmdhead() into plaintext/encrypted variants
1c0530ef5bf190a62ca8ce7c9b3ae14702b44a7f2019-05-14T10:27:44Z2019-05-14T10:27:44ZSplit ssync() into plaintext/encryption variantssinsin@2f30.orgcommit 1c0530ef5bf190a62ca8ce7c9b3ae14702b44a7f
parent d13482ec75f44aea5e16f7942945a9263d4736f5
Author: sin <sin@2f30.org>
Date: Tue, 14 May 2019 13:27:44 +0300
Split ssync() into plaintext/encryption variants
d13482ec75f44aea5e16f7942945a9263d4736f52019-05-14T10:12:33Z2019-05-14T10:12:33ZUpdate DESIGNsinsin@2f30.orgcommit d13482ec75f44aea5e16f7942945a9263d4736f5
parent 4d8c3d50ca614a40275ad223fdfd31fd897b9627
Author: sin <sin@2f30.org>
Date: Tue, 14 May 2019 11:12:33 +0100
Update DESIGN
4d8c3d50ca614a40275ad223fdfd31fd897b96272019-05-14T10:05:50Z2019-05-14T10:05:50ZMove hashing to top layersinsin@2f30.orgcommit 4d8c3d50ca614a40275ad223fdfd31fd897b9627
parent c3a040a2db7964be918a34acc35db912431757b1
Author: sin <sin@2f30.org>
Date: Tue, 14 May 2019 13:05:50 +0300
Move hashing to top layer
The hash of the block should be the hash of the plaintext block. This
is because when encryption is enabled the final block is always
different even if it contained the same data originally. This is due
to the fact that each encrypted block contains a unique nonce.
c3a040a2db7964be918a34acc35db912431757b12019-05-13T22:32:16Z2019-05-13T22:32:16Zchunker: Fixup return typessinsin@2f30.orgcommit c3a040a2db7964be918a34acc35db912431757b1
parent ba614e8d68f1c26d9c6bcd9ad0f67523359379ea
Author: sin <sin@2f30.org>
Date: Mon, 13 May 2019 23:32:16 +0100
chunker: Fixup return types
ba614e8d68f1c26d9c6bcd9ad0f67523359379ea2019-05-13T22:23:27Z2019-05-13T22:23:27Zchunker: Call seterr()sinsin@2f30.orgcommit ba614e8d68f1c26d9c6bcd9ad0f67523359379ea
parent 48f31f0e4374a1a6a8e4c1781390d64f256d355f
Author: sin <sin@2f30.org>
Date: Mon, 13 May 2019 23:23:27 +0100
chunker: Call seterr()
Also make cdrain() and cclose() void as they cannot fail.
48f31f0e4374a1a6a8e4c1781390d64f256d355f2019-05-13T22:10:25Z2019-05-13T22:15:26ZFixup pack/unpack prototypessinsin@2f30.orgcommit 48f31f0e4374a1a6a8e4c1781390d64f256d355f
parent 381646ad5b2c3aea7891364f352466fc3ea51e68
Author: sin <sin@2f30.org>
Date: Mon, 13 May 2019 23:10:25 +0100
Fixup pack/unpack prototypes
381646ad5b2c3aea7891364f352466fc3ea51e682019-05-13T22:01:51Z2019-05-13T22:15:20ZInitialize reserved fields to 0sinsin@2f30.orgcommit 381646ad5b2c3aea7891364f352466fc3ea51e68
parent c3903829beb99b52fe47b86b42ee6cc9088948e2
Author: sin <sin@2f30.org>
Date: Mon, 13 May 2019 23:01:51 +0100
Initialize reserved fields to 0
c3903829beb99b52fe47b86b42ee6cc9088948e22019-05-13T21:55:17Z2019-05-13T21:55:17ZUse bcompressops() directlysinsin@2f30.orgcommit c3903829beb99b52fe47b86b42ee6cc9088948e2
parent dbce5b2dd7fee84e5d019f6146fe5bb7336aa9d5
Author: sin <sin@2f30.org>
Date: Mon, 13 May 2019 22:55:17 +0100
Use bcompressops() directly
dbce5b2dd7fee84e5d019f6146fe5bb7336aa9d52019-05-12T19:41:15Z2019-05-12T19:41:15ZUpdate commentsinsin@2f30.orgcommit dbce5b2dd7fee84e5d019f6146fe5bb7336aa9d5
parent 4abf001684538854fb31ed5aaa1d3019da241d06
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 20:41:15 +0100
Update comment
4abf001684538854fb31ed5aaa1d3019da241d062019-05-12T19:39:08Z2019-05-12T19:39:08ZDie early if encryption key is not providedsinsin@2f30.orgcommit 4abf001684538854fb31ed5aaa1d3019da241d06
parent 0b71c907f1b957781c5850a7445e3fd6abbdfb43
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 20:39:08 +0100
Die early if encryption key is not provided
0b71c907f1b957781c5850a7445e3fd6abbdfb432019-05-12T19:14:09Z2019-05-12T19:14:09ZSplit some more pack/unpack from write/readsinsin@2f30.orgcommit 0b71c907f1b957781c5850a7445e3fd6abbdfb43
parent 51940c0f0f8def58517f3ef932b9b657cf556f18
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 20:14:09 +0100
Split some more pack/unpack from write/read
51940c0f0f8def58517f3ef932b9b657cf556f182019-05-12T18:40:04Z2019-05-12T18:40:04ZConvert errx() to printerr()sinsin@2f30.orgcommit 51940c0f0f8def58517f3ef932b9b657cf556f18
parent db110c100aa41ddad498d85c6ffd537f9d7d5aca
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 19:40:04 +0100
Convert errx() to printerr()
db110c100aa41ddad498d85c6ffd537f9d7d5aca2019-05-12T18:37:09Z2019-05-12T18:37:44ZFix commentsinsin@2f30.orgcommit db110c100aa41ddad498d85c6ffd537f9d7d5aca
parent c14172d9472f2d53300a19b3fa27ddcbaba185d6
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 19:37:09 +0100
Fix comment
c14172d9472f2d53300a19b3fa27ddcbaba185d62019-05-12T18:36:07Z2019-05-12T18:36:07ZSeparate pack/unpack from write/readsinsin@2f30.orgcommit c14172d9472f2d53300a19b3fa27ddcbaba185d6
parent 7c3a4a21592d3c11e418e00964caadaec81613a5
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 19:36:07 +0100
Separate pack/unpack from write/read
7c3a4a21592d3c11e418e00964caadaec81613a52019-05-12T18:30:52Z2019-05-12T18:31:41ZSplit pack/unpack from write/readsinsin@2f30.orgcommit 7c3a4a21592d3c11e418e00964caadaec81613a5
parent ba824c61fa56f57bb37251927c5b8d2b687167af
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 19:30:52 +0100
Split pack/unpack from write/read
ba824c61fa56f57bb37251927c5b8d2b687167af2019-05-12T18:27:38Z2019-05-12T18:27:38ZSet errors in key.csinsin@2f30.orgcommit ba824c61fa56f57bb37251927c5b8d2b687167af
parent 8eb1fae6267c34433156caab59ca534e06b85901
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 19:27:38 +0100
Set errors in key.c
8eb1fae6267c34433156caab59ca534e06b859012019-05-12T15:55:06Z2019-05-12T15:55:06ZStyle fixsinsin@2f30.orgcommit 8eb1fae6267c34433156caab59ca534e06b85901
parent e9be30a4e2a0583a262c06a70e676634a69eae3a
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 16:55:06 +0100
Style fix
e9be30a4e2a0583a262c06a70e676634a69eae3a2019-05-12T15:47:49Z2019-05-12T15:47:49Zsnap.c: pack/unpack cannot failsinsin@2f30.orgcommit e9be30a4e2a0583a262c06a70e676634a69eae3a
parent 9d31ed41e0feb2f2c432ef8d8666a6a0476c8f4f
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 16:47:49 +0100
snap.c: pack/unpack cannot fail
9d31ed41e0feb2f2c432ef8d8666a6a0476c8f4f2019-05-12T15:38:20Z2019-05-12T15:38:20ZUse explicit sizessinsin@2f30.orgcommit 9d31ed41e0feb2f2c432ef8d8666a6a0476c8f4f
parent faf2fab2ac2febc631159913683d1c3dbc5166b3
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 16:38:20 +0100
Use explicit sizes
faf2fab2ac2febc631159913683d1c3dbc5166b32019-05-12T15:36:27Z2019-05-12T15:36:27ZRework additional data handlingsinsin@2f30.orgcommit faf2fab2ac2febc631159913683d1c3dbc5166b3
parent 01c8fce481e7a253ac9a96c4bbc877aab2945586
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 16:36:27 +0100
Rework additional data handling
01c8fce481e7a253ac9a96c4bbc877aab29455862019-05-12T15:28:15Z2019-05-12T15:28:15ZCompare against define in assert()sinsin@2f30.orgcommit 01c8fce481e7a253ac9a96c4bbc877aab2945586
parent 72ba1a8a75b1990156ec209538cc00498efcb43d
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 16:28:15 +0100
Compare against define in assert()
72ba1a8a75b1990156ec209538cc00498efcb43d2019-05-12T14:24:55Z2019-05-12T15:21:50ZEncrypt/authenticate snapshot metadatasinsin@2f30.orgcommit 72ba1a8a75b1990156ec209538cc00498efcb43d
parent 9c6cdcc42dc9b0def23ed2839cb528f3867f9cfb
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 15:24:55 +0100
Encrypt/authenticate snapshot metadata
9c6cdcc42dc9b0def23ed2839cb528f3867f9cfb2019-05-12T11:01:09Z2019-05-12T11:01:09ZFixup declarationssinsin@2f30.orgcommit 9c6cdcc42dc9b0def23ed2839cb528f3867f9cfb
parent 8faa8deed4fb6d7d6f5c90ad39715aac27254444
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 12:01:09 +0100
Fixup declarations
8faa8deed4fb6d7d6f5c90ad39715aac272544442019-05-12T10:57:16Z2019-05-12T10:57:33ZUse seterr() when reading/write the state filesinsin@2f30.orgcommit 8faa8deed4fb6d7d6f5c90ad39715aac27254444
parent a8beae9784fa77d57a05f35c0980d7504aea2fde
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 11:57:16 +0100
Use seterr() when reading/write the state file
a8beae9784fa77d57a05f35c0980d7504aea2fde2019-05-12T10:52:09Z2019-05-12T10:57:33ZMove error functions to misc.c so they can be reusedsinsin@2f30.orgcommit a8beae9784fa77d57a05f35c0980d7504aea2fde
parent ffaf068f318e080bdf7cfaf1232836b92f779315
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 11:52:09 +0100
Move error functions to misc.c so they can be reused
ffaf068f318e080bdf7cfaf1232836b92f7793152019-05-12T10:42:15Z2019-05-12T10:42:15ZUse extern for declssinsin@2f30.orgcommit ffaf068f318e080bdf7cfaf1232836b92f779315
parent 6390625cef35952e411999714e77a137a55de718
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 11:42:15 +0100
Use extern for decls
6390625cef35952e411999714e77a137a55de7182019-05-12T10:32:31Z2019-05-12T10:32:31ZFix error messagesinsin@2f30.orgcommit 6390625cef35952e411999714e77a137a55de718
parent 7bfa7b5d8027abad0750cb19efc0c3ff650a2d3d
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 11:32:31 +0100
Fix error message
7bfa7b5d8027abad0750cb19efc0c3ff650a2d3d2019-05-12T09:30:42Z2019-05-12T09:30:42ZRemove outdated commentsinsin@2f30.orgcommit 7bfa7b5d8027abad0750cb19efc0c3ff650a2d3d
parent 956192e3229cd13d185e896b34e3476371b4a83c
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 10:30:42 +0100
Remove outdated comment
956192e3229cd13d185e896b34e3476371b4a83c2019-05-12T09:26:07Z2019-05-12T09:26:07ZUse extern for declssinsin@2f30.orgcommit 956192e3229cd13d185e896b34e3476371b4a83c
parent da6cffe23132c09ca4599486e396a7b5e2a06a0b
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 10:26:07 +0100
Use extern for decls
da6cffe23132c09ca4599486e396a7b5e2a06a0b2019-05-12T09:20:15Z2019-05-12T09:20:15Zdup-init: Call loadkey() after locking the reposinsin@2f30.orgcommit da6cffe23132c09ca4599486e396a7b5e2a06a0b
parent 1cec40f109d1d6ae9e58b7f1e0fdd6c596155eee
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 10:20:15 +0100
dup-init: Call loadkey() after locking the repo
1cec40f109d1d6ae9e58b7f1e0fdd6c596155eee2019-05-12T09:19:24Z2019-05-12T09:19:24ZRename some more symbolssinsin@2f30.orgcommit 1cec40f109d1d6ae9e58b7f1e0fdd6c596155eee
parent fe9f87887380dd21504bc482b245398ae9be0d1a
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 10:19:24 +0100
Rename some more symbols
fe9f87887380dd21504bc482b245398ae9be0d1a2019-05-12T09:18:57Z2019-05-12T09:18:57ZRename {load,save}key to {read,write}keysinsin@2f30.orgcommit fe9f87887380dd21504bc482b245398ae9be0d1a
parent 7da9e6101622a5682c04733dcf7f3ff849bcb9bf
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 10:18:57 +0100
Rename {load,save}key to {read,write}key
7da9e6101622a5682c04733dcf7f3ff849bcb9bf2019-05-12T09:17:25Z2019-05-12T09:17:25ZRename {load,save}state to {read,write}statesinsin@2f30.orgcommit 7da9e6101622a5682c04733dcf7f3ff849bcb9bf
parent 6b21cc335d619eb1bdf2ea285087e98e4c78d7e4
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 10:17:25 +0100
Rename {load,save}state to {read,write}state
6b21cc335d619eb1bdf2ea285087e98e4c78d7e42019-05-12T09:03:14Z2019-05-12T09:10:51ZUse a state file to store repository settingssinsin@2f30.orgcommit 6b21cc335d619eb1bdf2ea285087e98e4c78d7e4
parent 8ef5e9d6666a818d610e1e1b1ffefa552f2c76f6
Author: sin <sin@2f30.org>
Date: Sun, 12 May 2019 10:03:14 +0100
Use a state file to store repository settings
8ef5e9d6666a818d610e1e1b1ffefa552f2c76f62019-05-08T00:14:33Z2019-05-09T18:30:33ZImplement state filesinsin@2f30.orgcommit 8ef5e9d6666a818d610e1e1b1ffefa552f2c76f6
parent a54afccf81b4152c8767ea4eaee2f93e39ac9eba
Author: sin <sin@2f30.org>
Date: Wed, 8 May 2019 01:14:33 +0100
Implement state file
a54afccf81b4152c8767ea4eaee2f93e39ac9eba2019-05-09T12:45:14Z2019-05-09T12:45:14ZNuke some whitespacesinsin@2f30.orgcommit a54afccf81b4152c8767ea4eaee2f93e39ac9eba
parent 8faf31baa2005f46bc2e6ad13edb1261717244a7
Author: sin <sin@2f30.org>
Date: Thu, 9 May 2019 13:45:14 +0100
Nuke some whitespace
8faf31baa2005f46bc2e6ad13edb1261717244a72019-05-09T10:39:47Z2019-05-09T10:39:47ZDo not exit on error in runtestssinsin@2f30.orgcommit 8faf31baa2005f46bc2e6ad13edb1261717244a7
parent d04f1686624a9c680965f0c090cc1808935687f4
Author: sin <sin@2f30.org>
Date: Thu, 9 May 2019 11:39:47 +0100
Do not exit on error in runtests
d04f1686624a9c680965f0c090cc1808935687f42019-05-08T00:16:43Z2019-05-08T00:17:18ZRe-arrange some definessinsin@2f30.orgcommit d04f1686624a9c680965f0c090cc1808935687f4
parent ca0493fa7861e7fd5bcdc108d7f56c4109d09fae
Author: sin <sin@2f30.org>
Date: Wed, 8 May 2019 01:16:43 +0100
Re-arrange some defines
ca0493fa7861e7fd5bcdc108d7f56c4109d09fae2019-05-07T23:57:04Z2019-05-07T23:57:04ZAlign some commentssinsin@2f30.orgcommit ca0493fa7861e7fd5bcdc108d7f56c4109d09fae
parent d68ea46d747443f91d963fce511b5fbf46ad11aa
Author: sin <sin@2f30.org>
Date: Wed, 8 May 2019 00:57:04 +0100
Align some comments
d68ea46d747443f91d963fce511b5fbf46ad11aa2019-05-07T20:06:12Z2019-05-07T20:06:12ZUpdate commentsinsin@2f30.orgcommit d68ea46d747443f91d963fce511b5fbf46ad11aa
parent 2370f812d96bdcae0484b0f4f3041e4d1ab0d07d
Author: sin <sin@2f30.org>
Date: Tue, 7 May 2019 21:06:12 +0100
Update comment
2370f812d96bdcae0484b0f4f3041e4d1ab0d07d2019-05-07T20:04:22Z2019-05-07T20:04:22Zsnap: Update pack functionssinsin@2f30.orgcommit 2370f812d96bdcae0484b0f4f3041e4d1ab0d07d
parent 03aa3e43c5b81940bab9e6990d71bf036a188f27
Author: sin <sin@2f30.org>
Date: Tue, 7 May 2019 21:04:22 +0100
snap: Update pack functions
03aa3e43c5b81940bab9e6990d71bf036a188f272019-05-07T19:56:44Z2019-05-07T20:02:42ZChange snapshot formatsinsin@2f30.orgcommit 03aa3e43c5b81940bab9e6990d71bf036a188f27
parent 14a97f465c31b9e0c707730ca8798dfd4140cb03
Author: sin <sin@2f30.org>
Date: Tue, 7 May 2019 20:56:44 +0100
Change snapshot format
Include a header at the front so we can store the nonce etc.
14a97f465c31b9e0c707730ca8798dfd4140cb032019-05-07T19:56:23Z2019-05-07T19:56:23ZReorder bhdr fieldsinsin@2f30.orgcommit 14a97f465c31b9e0c707730ca8798dfd4140cb03
parent d7e3a0358ece64c1d797e149c61c16472664b909
Author: sin <sin@2f30.org>
Date: Tue, 7 May 2019 20:56:23 +0100
Reorder bhdr field
d7e3a0358ece64c1d797e149c61c16472664b9092019-05-07T17:11:34Z2019-05-07T17:11:34ZFix error messagesinsin@2f30.orgcommit d7e3a0358ece64c1d797e149c61c16472664b909
parent 507fc4bcf4bbfe7d0fefa6c8cdd699322715da61
Author: sin <sin@2f30.org>
Date: Tue, 7 May 2019 18:11:34 +0100
Fix error message
507fc4bcf4bbfe7d0fefa6c8cdd699322715da612019-05-07T15:57:40Z2019-05-07T15:58:55ZSwitch from singly linked list to a tail queuesinsin@2f30.orgcommit 507fc4bcf4bbfe7d0fefa6c8cdd699322715da61
parent a7753b65b2b40ba265e30e8f2f0bda25da7baa53
Author: sin <sin@2f30.org>
Date: Tue, 7 May 2019 16:57:40 +0100
Switch from singly linked list to a tail queue
This is needed to guarantee correct order of traversal for upcoming
streaming encryption/authentication support.
a7753b65b2b40ba265e30e8f2f0bda25da7baa532019-05-06T00:00:49Z2019-05-06T00:00:49ZAdd DESIGN docsinsin@2f30.orgcommit a7753b65b2b40ba265e30e8f2f0bda25da7baa53
parent 42797a877f6efb89a46968af77fe8ab9c0e335fa
Author: sin <sin@2f30.org>
Date: Mon, 6 May 2019 01:00:49 +0100
Add DESIGN doc
42797a877f6efb89a46968af77fe8ab9c0e335fa2019-05-05T20:25:16Z2019-05-05T20:25:16ZNo need for a temporary bops pointersinsin@2f30.orgcommit 42797a877f6efb89a46968af77fe8ab9c0e335fa
parent 921f7817b6057ac6d1efd12165e1593b0accfc4e
Author: sin <sin@2f30.org>
Date: Sun, 5 May 2019 21:25:16 +0100
No need for a temporary bops pointer
921f7817b6057ac6d1efd12165e1593b0accfc4e2019-05-05T20:22:06Z2019-05-05T20:22:06ZRemove useless commentsinsin@2f30.orgcommit 921f7817b6057ac6d1efd12165e1593b0accfc4e
parent d96224299eea385265b405cc59a3b4881e75d69c
Author: sin <sin@2f30.org>
Date: Sun, 5 May 2019 21:22:06 +0100
Remove useless comment
d96224299eea385265b405cc59a3b4881e75d69c2019-05-05T20:17:32Z2019-05-05T20:17:42ZAdd some comments to snap.csinsin@2f30.orgcommit d96224299eea385265b405cc59a3b4881e75d69c
parent fb016d2858d1d77359c56f4d67070fc8386879b6
Author: sin <sin@2f30.org>
Date: Sun, 5 May 2019 21:17:32 +0100
Add some comments to snap.c
fb016d2858d1d77359c56f4d67070fc8386879b62019-05-05T19:56:51Z2019-05-05T20:10:26Zdup-check: Print hashes of corrupt blockssinsin@2f30.orgcommit fb016d2858d1d77359c56f4d67070fc8386879b6
parent bfcf7e2d112888bb42b40e2d25211edc7375f8c5
Author: sin <sin@2f30.org>
Date: Sun, 5 May 2019 20:56:51 +0100
dup-check: Print hashes of corrupt blocks