[Libguestfs] [PATCH v3 01/11] daemon: btrfs: add helper functions mount and umount
Pino Toscano
ptoscano at redhat.com
Tue Dec 16 13:20:30 UTC 2014
In data venerdì 12 dicembre 2014 15:03:23, Hu Tao ha scritto:
> +static int
> +umount (char *fs_buf, const mountable_t *fs)
> +{
> + if (fs->type != MOUNTABLE_PATH) {
> + CLEANUP_FREE char *err = NULL;
> + if (command (NULL, &err, str_umount, fs_buf, NULL) == -1) {
> + reply_with_error ("%s", err ? err : "malloc");
> + return -1;
> + }
> +
> + if (rmdir (fs_buf) == -1 && errno != ENOENT) {
> + reply_with_error ("rmdir: %m\n");
> + return -1;
> + }
> + }
> + free (fs_buf);
> + return 0;
> +}
The only issue with umount is that it does not free fs_buf properly
in all the return paths (e.g. when command or rmdir fail).
IMHO it'd be better to leave the ownership of that buffer to whatever
calls umount (using CLEANUP_FREE to ease that).
--
Pino Toscano
More information about the Libguestfs
mailing list