|
@@ -3907,35 +3907,6 @@ class ArchiverCheckTestCase(ArchiverTestCaseBase):
|
|
|
repository.commit(compact=False)
|
|
|
self.cmd('check', self.repository_location, exit_code=1)
|
|
|
|
|
|
- def test_attic013_acl_bug(self):
|
|
|
- # Attic up to release 0.13 contained a bug where every item unintentionally received
|
|
|
- # a b'acl'=None key-value pair.
|
|
|
- # This bug can still live on in Borg repositories (through borg upgrade).
|
|
|
- class Attic013Item:
|
|
|
- def as_dict(self):
|
|
|
- return {
|
|
|
- # These are required
|
|
|
- b'path': '1234',
|
|
|
- b'mtime': 0,
|
|
|
- b'mode': 0,
|
|
|
- b'user': b'0',
|
|
|
- b'group': b'0',
|
|
|
- b'uid': 0,
|
|
|
- b'gid': 0,
|
|
|
- # acl is the offending key.
|
|
|
- b'acl': None,
|
|
|
- }
|
|
|
-
|
|
|
- archive, repository = self.open_archive('archive1')
|
|
|
- with repository:
|
|
|
- manifest, key = Manifest.load(repository, Manifest.NO_OPERATION_CHECK)
|
|
|
- with Cache(repository, key, manifest) as cache:
|
|
|
- archive = Archive(repository, key, manifest, '0.13', cache=cache, create=True)
|
|
|
- archive.items_buffer.add(Attic013Item())
|
|
|
- archive.save()
|
|
|
- self.cmd('check', self.repository_location, exit_code=0)
|
|
|
- self.cmd('list', self.repository_location + '::0.13', exit_code=0)
|
|
|
-
|
|
|
|
|
|
class ManifestAuthenticationTest(ArchiverTestCaseBase):
|
|
|
def spoof_manifest(self, repository):
|