[libvirt] [PATCH] bitmap: reject zero-size bitmap

Eric Blake eblake at redhat.com
Wed Jun 2 15:05:08 UTC 2010


* src/util/bitmap.c (virBitmapAlloc): Tighten sanity check.
---

> > For that matter, should virBitmapAlloc(0) return NULL, instead of it's
> > current behavior of allocating an (empty) bitmap?
> >   
> 
> Yes, you are right - especially since there is no grow operation
> :-).  I should have returned NULL for size 0 request in the original
> version.

Any objections to this?

 src/util/bitmap.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/util/bitmap.c b/src/util/bitmap.c
index 69094a5..44edb49 100644
--- a/src/util/bitmap.c
+++ b/src/util/bitmap.c
@@ -1,6 +1,7 @@
 /*
  * bitmap.h: Simple bitmap operations
  *
+ * Copyright (C) 2010 Red Hat, Inc.
  * Copyright (C) 2010 Novell, Inc.
  *
  * This library is free software; you can redistribute it and/or
@@ -58,7 +59,7 @@ virBitmapPtr virBitmapAlloc(size_t size)
     virBitmapPtr bitmap;
     size_t sz;

-    if (SIZE_MAX - VIR_BITMAP_BITS_PER_UNIT < size)
+    if (SIZE_MAX - VIR_BITMAP_BITS_PER_UNIT < size || size == 0)
         return NULL;

     sz = (size + VIR_BITMAP_BITS_PER_UNIT - 1) /
-- 
1.7.0.1




More information about the libvir-list mailing list