On Tuesday 08 March 2016 16:04:21 Cédric Bosdonnat wrote: > These two functions allow the user to split the mountable strings > into a device and a subvolume if any. See this thread on the mailing > list for the rationale: > > https://www.redhat.com/archives/libguestfs/2016-February/msg00247.html > --- > generator/actions.ml | 26 ++++++++++++++++++++++++++ > po/POTFILES | 1 + > src/Makefile.am | 1 + > src/mountable.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ > 4 files changed, 79 insertions(+) > create mode 100644 src/mountable.c > > diff --git a/generator/actions.ml b/generator/actions.ml > index 36d08ad..51f2295 100644 > --- a/generator/actions.ml > +++ b/generator/actions.ml > @@ -1290,6 +1290,32 @@ Please read L<guestfs(3)/INSPECTION> for more details. > See also C<guestfs_inspect_get_mountpoints>." }; > > { defaults with > + name = "mountable_device"; added = (1, 33, 15); > + style = RString "device", [Mountable "mountable"], []; > + shortdesc = "extract the device part of a mountable"; > + longdesc = "\ > +Returns the device name of a mountable. In quite a lot of > +cases, the mountable is the device name. > + > +However this doesn't apply for btrfs subvolumes, where the > +mountable is a combination of both the device name and the > +subvolume path (see also C<guestfs_mountable_subvolume> to > +extract the subvolume path of the mountable if any)." }; > + > + { defaults with > + name = "mountable_subvolume"; added = (1, 33, 15); > + style = RString "subvolume", [Mountable "mountable"], []; > + shortdesc = "extract the subvolume part of a mountable"; > + longdesc = "\ > +Returns the subvolume path of a mountable. Btrfs subvolumes > +mountables are a combination of both the device name and the > +subvolume path (see also C<guestfs_mountable_device> to extract > +the device of the mountable). > + > +If the mountable does not represent a btrfs subvolume, then > +this function fails and the C<errno> is set to C<EINVAL>." }; > + > + { defaults with > name = "set_network"; added = (1, 5, 4); > style = RErr, [Bool "network"], []; > fish_alias = ["network"]; config_only = true; > diff --git a/po/POTFILES b/po/POTFILES > index 4fbc551..195206f 100644 > --- a/po/POTFILES > +++ b/po/POTFILES > @@ -346,6 +346,7 @@ src/libvirt-is-version.c > src/listfs.c > src/lpj.c > src/match.c > +src/mountable.c > src/osinfo.c > src/private-data.c > src/proto.c > diff --git a/src/Makefile.am b/src/Makefile.am > index 60641bf..3b4cd10 100644 > --- a/src/Makefile.am > +++ b/src/Makefile.am > @@ -121,6 +121,7 @@ libguestfs_la_SOURCES = \ > listfs.c \ > lpj.c \ > match.c \ > + mountable.c \ > osinfo.c \ > private-data.c \ > proto.c \ > diff --git a/src/mountable.c b/src/mountable.c > new file mode 100644 > index 0000000..fb982df > --- /dev/null > +++ b/src/mountable.c > @@ -0,0 +1,51 @@ > +/* libguestfs > + * Copyright (C) 2016 SUSE LLC > + * > + * This library is free software; you can redistribute it and/or > + * modify it under the terms of the GNU Lesser General Public > + * License as published by the Free Software Foundation; either > + * version 2 of the License, or (at your option) any later version. > + * > + * This library is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > + * Lesser General Public License for more details. > + * > + * You should have received a copy of the GNU Lesser General Public > + * License along with this library; if not, write to the Free Software > + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 > USA > + */ > + > +#include <config.h> > +#include <string.h> > +#include <errno.h> > + > +#include "guestfs.h" > +#include "guestfs-internal.h" > +
I'm noticing now that the guestfs-internal-actions.h include is missing here, and thus the functions here will not build because of missing prototypes. I'm fixing manually and pushing, no need to send a new version of this patch now. My suggestion is to configure libguestfs for development with --enable-werror, so warnings are turned into errors (and thus are harder to miss). Thanks, -- Pino Toscano
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Libguestfs mailing list Libguestfs@redhat.com https://www.redhat.com/mailman/listinfo/libguestfs