diff options
author | Thomas Waldmann <tw@waldmann-edv.de> | 2023-07-29 22:45:56 +0200 |
---|---|---|
committer | Thomas Waldmann <tw@waldmann-edv.de> | 2023-07-29 23:21:10 +0200 |
commit | 3e640a38c064eaafaff8ef6a8d4e543174ff6bcd (patch) | |
tree | 6746610e0e7bdfbd0f4248b38baebb1c85d145ed /src | |
parent | 1e7dec154186b503265a2194bfee8aaca8d57cae (diff) |
add a test for unreadable parent dir, see #7746
Diffstat (limited to 'src')
-rw-r--r-- | src/borg/testsuite/archiver/create_cmd.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/borg/testsuite/archiver/create_cmd.py b/src/borg/testsuite/archiver/create_cmd.py index 842234eed..30cf998d4 100644 --- a/src/borg/testsuite/archiver/create_cmd.py +++ b/src/borg/testsuite/archiver/create_cmd.py @@ -167,6 +167,17 @@ def test_create_duplicate_root(archivers, request): assert sorted(paths) == ["input", "input/a", "input/a/hardlink", "input/b", "input/b/hardlink"] +def test_create_unreadable_parent(archiver): + parent_dir = os.path.join(archiver.input_path, "parent") + root_dir = os.path.join(archiver.input_path, "parent", "root") + os.mkdir(parent_dir) + os.mkdir(root_dir) + os.chmod(parent_dir, 0o111) # --x--x--x == parent dir traversable, but not readable + cmd(archiver, "rcreate", "--encryption=none") + # issue #7746: we *can* read root_dir and we *can* traverse parent_dir, so this should work: + cmd(archiver, "create", "test", root_dir) + + @pytest.mark.skipif(is_win32, reason="unix sockets not available on windows") def test_unix_socket(archivers, request, monkeypatch): archiver = request.getfixturevalue(archivers) |