From b1082696ebb3970ca0a67790fa9bb9955eff5fc2 Mon Sep 17 00:00:00 2001 From: Valentin Rothberg Date: Thu, 24 Jun 2021 13:53:36 +0200 Subject: cp: do not allow dir->file copying Fix a bug in `podman-cp` to forbid copying directories to files. Previously, the directory was copied to the parent directory of the file which is wrong. Signed-off-by: Valentin Rothberg --- test/system/065-cp.bats | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'test/system/065-cp.bats') diff --git a/test/system/065-cp.bats b/test/system/065-cp.bats index 24ac8118e..eda04611f 100644 --- a/test/system/065-cp.bats +++ b/test/system/065-cp.bats @@ -272,6 +272,11 @@ load helpers run_podman rm -f cpcontainer done < <(parse_table "$tests") + run_podman create --name cpcontainer --workdir=/srv $cpimage sleep infinity + run_podman 125 cp $srcdir cpcontainer:/etc/os-release + is "$output" "Error: destination must be a directory when copying a directory" "cannot copy directory to file" + run_podman rm -f cpcontainer + run_podman rmi -f $cpimage } @@ -343,6 +348,10 @@ load helpers is "$(< $destdir$dest_fullname/containerfile1)" "${randomcontent[1]}" "$description" rm -rf $destdir/* done < <(parse_table "$tests") + + touch $destdir/testfile + run_podman 125 cp cpcontainer:/etc/ $destdir/testfile + is "$output" "Error: destination must be a directory when copying a directory" "cannot copy directory to file" run_podman rm -f cpcontainer run_podman rmi -f $cpimage -- cgit v1.2.3-54-g00ecf