[Libguestfs] [PATCH] fuse: fix return value of guestunmount for unmounted paths
Richard W.M. Jones
rjones at redhat.com
Tue Nov 24 15:26:38 UTC 2015
On Mon, Nov 23, 2015 at 05:58:44PM +0100, Pino Toscano wrote:
> Exit with 3 as return value when fusermount fails, because the specified
> mount point is not considered mounted for the user. This is in line
> with what the guestunmount documentation says.
>
> Adapt the test-guestunmount-fd test to the updated return value.
>
> Thanks to: Maxim Perevedentsev.
> ---
> fuse/guestunmount.c | 2 +-
> fuse/test-guestunmount-fd.c | 8 ++++----
> 2 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/fuse/guestunmount.c b/fuse/guestunmount.c
> index e952c63..fa6d5bb 100644
> --- a/fuse/guestunmount.c
> +++ b/fuse/guestunmount.c
> @@ -220,7 +220,7 @@ main (int argc, char *argv[])
>
> free (error);
>
> - exit (2);
> + exit (3);
>
> /* success */
> done:
> diff --git a/fuse/test-guestunmount-fd.c b/fuse/test-guestunmount-fd.c
> index 93adc98..b09a60f 100644
> --- a/fuse/test-guestunmount-fd.c
> +++ b/fuse/test-guestunmount-fd.c
> @@ -107,8 +107,8 @@ main (int argc, char *argv[])
> }
>
> /* Close the write side of the pipe. This should cause guestunmount
> - * to exit. It should exit with status code _2_ because we gave it
> - * a mountpoint which isn't a FUSE mountpoint.
> + * to exit. It should exit with status code _3_ because we gave it
> + * a directory which isn't a FUSE mountpoint.
> */
> close (pipefd[1]);
>
> @@ -117,10 +117,10 @@ main (int argc, char *argv[])
> perror ("waitpid");
> exit (EXIT_FAILURE);
> }
> - if (!WIFEXITED (status) || WEXITSTATUS (status) != 2) {
> + if (!WIFEXITED (status) || WEXITSTATUS (status) != 3) {
> char status_string[80];
>
> - fprintf (stderr, "%s: test failed: guestunmount didn't return status code 2; %s\n",
> + fprintf (stderr, "%s: test failed: guestunmount didn't return status code 3; %s\n",
> guestfs_int_program_name,
> guestfs_int_exit_status_to_string (status, "guestunmount",
> status_string,
Indeed this was buggy - thanks Maxim and Pino.
ACK.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-df lists disk usage of guests without needing to install any
software inside the virtual machine. Supports Linux and Windows.
http://people.redhat.com/~rjones/virt-df/
More information about the Libguestfs
mailing list