summaryrefslogtreecommitdiffstats
path: root/daemon/tar.c
diff options
context:
space:
mode:
authorRichard Jones <rjones@redhat.com>2010-04-17 14:25:55 +0100
committerRichard Jones <rjones@redhat.com>2010-04-17 15:22:29 +0100
commit5922d7084d6b43f0a1a15b664c7082dfeaf584d0 (patch)
tree465894bcdc5286627c25df62adcbd75a10125e96 /daemon/tar.c
parent68467cb1c2f8b1cc7844ed6512b7f76ef2aba1d1 (diff)
downloadlibguestfs-5922d7084d6b43f0a1a15b664c7082dfeaf584d0.tar.gz
libguestfs-5922d7084d6b43f0a1a15b664c7082dfeaf584d0.tar.xz
libguestfs-5922d7084d6b43f0a1a15b664c7082dfeaf584d0.zip
Fix upload losing synchronization if root not mounted (RHBZ#576879).
Modify the generator so that it can correctly handle early cancellation for Pathname|Device|.. parameters. This fixes the upload command, but consequently we need to fix the parameters for tar_in and t?z_in commands. This should also mean that 'win:' can now be used as the second argument of tar_in and t?z_in commands in guestfish, whereas previously this wouldn't have worked. Adds a regression test for the original problem.
Diffstat (limited to 'daemon/tar.c')
-rw-r--r--daemon/tar.c12
1 files changed, 0 insertions, 12 deletions
diff --git a/daemon/tar.c b/daemon/tar.c
index 5b73599a..26a0d302 100644
--- a/daemon/tar.c
+++ b/daemon/tar.c
@@ -42,12 +42,6 @@ do_tar_in (const char *dir)
FILE *fp;
char *cmd;
- if (!root_mounted || dir[0] != '/') {
- cancel_receive ();
- reply_with_error ("root must be mounted and path must be absolute");
- return -1;
- }
-
/* "tar -C /sysroot%s -xf -" but we have to quote the dir. */
if (asprintf_nowarn (&cmd, "tar -C %R -xf -", dir) == -1) {
err = errno;
@@ -165,12 +159,6 @@ do_tXz_in (const char *dir, char filter)
FILE *fp;
char *cmd;
- if (!root_mounted || dir[0] != '/') {
- cancel_receive ();
- reply_with_error ("root must be mounted and path must be absolute");
- return -1;
- }
-
/* "tar -C /sysroot%s -zxf -" but we have to quote the dir. */
if (asprintf_nowarn (&cmd, "tar -C %R -%cxf -", dir, filter) == -1) {
err = errno;