[libvirt] [libvirt-glib] Add gvir_storage_vol_resize()
Daniel P. Berrange
berrange at redhat.com
Wed Feb 1 12:02:47 UTC 2012
On Wed, Feb 01, 2012 at 12:03:43PM +0100, Christophe Fergeau wrote:
> On Wed, Feb 01, 2012 at 02:27:28AM +0200, Zeeshan Ali (Khattak) wrote:
> > From: "Zeeshan Ali (Khattak)" <zeeshanak at gnome.org>
> >
> > Add wrapper for virStorageVolResize().
> > ---
> > libvirt-gobject/libvirt-gobject-storage-vol.c | 45 +++++++++++++++++++++++++
> > libvirt-gobject/libvirt-gobject-storage-vol.h | 20 +++++++++++
> > libvirt-gobject/libvirt-gobject.sym | 1 +
> > 3 files changed, 66 insertions(+), 0 deletions(-)
> >
> > diff --git a/libvirt-gobject/libvirt-gobject-storage-vol.c b/libvirt-gobject/libvirt-gobject-storage-vol.c
> > index 491e2e6..f6f0c50 100644
> > --- a/libvirt-gobject/libvirt-gobject-storage-vol.c
> > +++ b/libvirt-gobject/libvirt-gobject-storage-vol.c
> > @@ -299,3 +299,48 @@ gboolean gvir_storage_vol_delete(GVirStorageVol *vol,
> >
> > return TRUE;
> > }
> > +
> > +/**
> > + * gvir_storage_vol_resize:
> > + * @vol: the storage volume to resize
> > + * @capacity: the new capacity of the volume
> > + * @flags: the flags
> > + * @err: Return location for errors, or NULL
> > + *
> > + * Changes the capacity of the storage volume @vol to @capacity.
> > + *
> > + * Returns: the new capacity of the volume on success, 0 otherwise
> > + */
> > +gboolean gvir_storage_vol_resize(GVirStorageVol *vol,
> > + guint64 capacity,
> > + GVirStorageVolResizeFlags flags,
>
> We're probably already doing that in other places, I may have already
> mentioned it, but I'm a bit uncomfortable with using the enum type for
> bitfields. If I'm not mistaken, if we use GVirStorageVolResizeFlags,
> passing a value which is not one of the enum values (such as DELTA |
> SHRINK) is undefined behaviour in the C spec. I'm fine with us deciding
> it's not important, but it's still worth mentioning :)
Yeah, for methods which are 'flags', we should use guint64 as the
type. Only use the enum types for things which really are enums,
not bitfields.
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list