Jean-Paul Calderone
ff511bbcf2
Merge remote-tracking branch 'origin/master' into 3832.backdated-leases
2021-10-29 07:17:23 -04:00
Jean-Paul Calderone
c05464f420
Merge pull request #1154 from tahoe-lafs/3835.document-some-testing-code
...
Document some testing code
Fixes: ticket:3835
2021-10-29 07:16:02 -04:00
Jean-Paul Calderone
b5f882ffa6
introduce and use LeaseInfo.is_cancel_secret
2021-10-28 15:21:51 -04:00
Jean-Paul Calderone
8b976b441e
add LeaseInfo.is_renew_secret and use it
2021-10-28 15:21:51 -04:00
Jean-Paul Calderone
78dbe76994
remove unused import
2021-10-28 15:20:44 -04:00
Jean-Paul Calderone
f8655f149b
fix the type annotations and such
2021-10-28 15:04:19 -04:00
Jean-Paul Calderone
8d5727977b
it doesn't typecheck, nevermind
2021-10-28 14:47:42 -04:00
Jean-Paul Calderone
54d80222c9
switch to monkey-patching from other sources
...
This is not much of an improvement to the tests themselves, unfortunately.
However, it does get us one step closer to dropping `mock` as a dependency.
2021-10-28 14:36:30 -04:00
Jean-Paul Calderone
d0ee17d99e
some docstrings
2021-10-28 12:39:01 -04:00
Jean-Paul Calderone
1b46ac7a24
add MutableShareFile.is_valid_header and use it
2021-10-28 11:38:18 -04:00
Jean-Paul Calderone
66845c9a17
Add ShareFile.is_valid_header and use it instead of manual header inspection
2021-10-28 11:12:20 -04:00
Jean-Paul Calderone
65d3ab6142
move backdating logic into mutable/immutable share files
2021-10-28 10:53:52 -04:00
Jean-Paul Calderone
3514995068
some versions of mypy don't like this so nevermind
2021-10-28 10:26:30 -04:00
Jean-Paul Calderone
76caf46347
make the alternate LeaseInfo constructors into class methods
2021-10-28 10:23:58 -04:00
Jean-Paul Calderone
70fb5d563a
Get rid of the public expiration_time attribute
...
LeaseInfo now has a getter and a setter for this attribute.
LeaseInfo is now also immutable by way of `attrs`.
LeaseInfo is now also comparable by way of `attrs`.
2021-10-28 09:48:26 -04:00
Jean-Paul Calderone
f02f14a6e2
Merge remote-tracking branch 'upstream/master'
2021-10-26 09:23:49 -04:00
fenn-cs
69d335c1e1
update test overlap function docstring
...
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2021-10-26 13:14:26 +01:00
fenn-cs
9764ac740a
test kwargs overlap with params in start_action
...
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2021-10-26 11:22:32 +01:00
Jean-Paul Calderone
84dfb360ce
Merge pull request #1141 from LeastAuthority/3814.remove-control-port
...
Remove the "control port" and its associated Tub
Fixes: ticket:3814
2021-10-25 20:57:23 -04:00
Jean-Paul Calderone
3de481ab6b
remove unused imports
2021-10-25 20:52:35 -04:00
Jean-Paul Calderone
5878a64890
Remove password-based authentication from the SFTP frontend
2021-10-25 20:50:19 -04:00
Jean-Paul Calderone
aa6360f08e
Merge remote-tracking branch 'remediate/master'
2021-10-24 07:38:42 -04:00
Jean-Paul Calderone
b51f0ac8ff
storage_index is a byte string
...
and Python 3 cares
2021-10-23 08:04:19 -04:00
Jean-Paul Calderone
0ada9d93f7
remove unused local
2021-10-23 07:43:22 -04:00
Jean-Paul Calderone
470657b337
Drop corruption advisories if we don't have a matching share
2021-10-23 07:35:05 -04:00
Jean-Paul Calderone
21f848f0e3
Merge remote-tracking branch 'upstream/master'
2021-10-23 07:32:26 -04:00
Jean-Paul Calderone
cb675df48d
remove unused encoding of storage index
2021-10-22 16:10:24 -04:00
Jean-Paul Calderone
194499aafe
remove unused import
2021-10-22 16:09:54 -04:00
Jean-Paul Calderone
6449ad03de
Do not record corruption advisories if there is no available space
2021-10-22 15:56:45 -04:00
Jean-Paul Calderone
f789339a79
Have MutableShare file only write a new lease if there is room for it
...
This is analagous to the earlier ShareFile change.
2021-10-22 15:56:45 -04:00
Jean-Paul Calderone
dd1ab2afe8
Add a helper to compute the size of a lease in a mutable share
2021-10-22 15:56:45 -04:00
Jean-Paul Calderone
e0ed04c103
use SyncTestCase to get expectThat
2021-10-22 15:56:45 -04:00
Jean-Paul Calderone
4defc641a2
Have ShareFile only write a new lease if there is room for it
...
StorageServer passes available space down so it can make the decision.
ShareFile has to do it because `add_or_renew_lease` only *sometimes* adds a
lease and only ShareFile knows when that is.
2021-10-22 15:56:45 -04:00
Jean-Paul Calderone
1264c3be1e
Use _add_or_renew_leases
helper consistently in StorageServer
...
This will make it easier to add a new argument to the underlying
`add_or_renew_lease` call.
2021-10-22 15:56:45 -04:00
Jean-Paul Calderone
b3aa1e224f
Add a helper to LeaseInfo for computing size
...
This lets some code LBYL and avoid writing if the lease won't fit in the
immutable share in the space available.
2021-10-22 15:56:45 -04:00
Jean-Paul Calderone
c774256937
Add a test for `remote_add_lease
` with respect to reserved space
2021-10-22 15:56:45 -04:00
Jean-Paul Calderone
82e4704415
Merge remote-tracking branch 'remediate/master' into LFS-01-008
2021-10-22 15:27:15 -04:00
Jean-Paul Calderone
ce30f9dd06
clean up copyediting errors
2021-10-22 15:04:45 -04:00
Jean-Paul Calderone
bb31215134
Merge remote-tracking branch 'remediate/master' into LFS-01-007
2021-10-22 12:35:57 -04:00
Jean-Paul Calderone
d8c466e9a7
try to explain lease_count_format
more clearly
2021-10-22 12:35:11 -04:00
Jean-Paul Calderone
a22787e879
Merge pull request #30 from tahoe-lafs/LFS-01-001
...
Fix item LFS-01-001 from the Cure53 audit
Fixes: ticket:3819
2021-10-22 12:20:38 -04:00
Jean-Paul Calderone
6c0ca0b885
try making windows let us use longer paths
2021-10-22 11:42:13 -04:00
fenn-cs
20ad6cd9e7
iterate over args directly without indexing
...
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
2021-10-19 23:57:52 +01:00
Itamar Turner-Trauring
2a5dbcb05e
Tests for mutable leases.
2021-10-19 09:30:38 -04:00
Itamar Turner-Trauring
4b8b6052f3
Finish testing leases on immutables.
2021-10-19 09:05:48 -04:00
Jean-Paul Calderone
3cd9a02c81
Reject negative lengths in MutableShareFile._read_share_data and readv
2021-10-18 20:22:52 -04:00
Jean-Paul Calderone
5e58b62979
Add a test for negative offset or length to MutableShareFile.readv
2021-10-18 20:22:52 -04:00
Jean-Paul Calderone
df64bbb1e4
fail to encode the lease count *before* changing anything
...
This preserves the failure behavior - `struct.error` is raised - but leaves
the actual share file contents untouched if the new lease count cannot be
encoded.
There are still two separate write operations so it is conceivable that some
other problem could cause `write_lease_record` to happen but
`write_encoded_num_leases` not to happen. As far as I can tell we have
severely limited options for addressing that problem in general as long as
share files are backed by a POSIX filesystem.
However, by removing the failure mode that depends on user input, it may be
that this is all that is needed to close the *security* hole.
2021-10-18 20:17:41 -04:00
Jean-Paul Calderone
f60bbbd3e2
make it possible to test this behavior of add_lease
2021-10-18 20:17:41 -04:00
Itamar Turner-Trauring
b7be91e3d0
First test for leases.
2021-10-18 13:17:07 -04:00