On Thu, Oct 29, 2015 at 14:43:10 +0100, Matthias Gatto wrote:
> As explained for virStorageSourceGetBackingStore, quorum allows
> multiple backing store, this make the operation to set bs complex
> because we have to check if the backingStore is used as an array
> or a pointer, and set it differently in both case.
> 
> In order to help the manipulation of backing store, I've added a
> function virStorageSourceSetBackingStore.
> 
> For now virStorageSourceSetBackingStore don't handle the case where
> we have more than one backing store in virStorageSource.
> 
> Signed-off-by: Matthias Gatto <matthias.ga...@outscale.com>
> Signed-off-by: John Ferlan <jfer...@redhat.com>
> ---
>  src/libvirt_private.syms  |  1 +
>  src/util/virstoragefile.c | 10 ++++++++++
>  src/util/virstoragefile.h |  4 ++++
>  3 files changed, 15 insertions(+)
> 


> diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c
> index cb8e248..731e0c3 100644
> --- a/src/util/virstoragefile.c
> +++ b/src/util/virstoragefile.c
> @@ -1817,6 +1817,16 @@ virStorageSourceGetBackingStore(const virStorageSource 
> *src,
>  }
>  
>  
> +bool
> +virStorageSourceSetBackingStore(virStorageSourcePtr src,
> +                                virStorageSourcePtr backingStore,
> +                                size_t pos ATTRIBUTE_UNUSED)
> +{

Again, this needs to do bounds checking once you are passing the size
in.

> +    src->backingStore = backingStore;
> +    return !!src->backingStore;

This return value is rather unhelpful. If this function is going to
reallocate the array, please use the -1/0 return values as usual.
Otherwise this function might as well be declared as void, since the
caller knows whether 'backingStore' was passed in or not.

Peter

Attachment: signature.asc
Description: Digital signature

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to