/* The following definitions come from lib/bitmap.c */
-struct bitmap *bitmap_allocate(int n);
-void bitmap_free(struct bitmap *bm);
struct bitmap *bitmap_talloc(TALLOC_CTX *mem_ctx, int n);
int bitmap_copy(struct bitmap * const dst, const struct bitmap * const src);
bool bitmap_set(struct bitmap *bm, unsigned i);
/* these functions provide a simple way to allocate integers from a
pool without repetition */
-/****************************************************************************
-allocate a bitmap of the specified size
-****************************************************************************/
-struct bitmap *bitmap_allocate(int n)
-{
- struct bitmap *bm;
-
- bm = SMB_MALLOC_P(struct bitmap);
-
- if (!bm) return NULL;
-
- bm->n = n;
- bm->b = SMB_MALLOC_ARRAY(uint32, (n+31)/32);
- if (!bm->b) {
- SAFE_FREE(bm);
- return NULL;
- }
-
- memset(bm->b, 0, sizeof(uint32)*((n+31)/32));
-
- return bm;
-}
-
-/****************************************************************************
-free a bitmap.
-****************************************************************************/
-
-void bitmap_free(struct bitmap *bm)
-{
- if (!bm)
- return;
-
- SAFE_FREE(bm->b);
- SAFE_FREE(bm);
-}
-
/****************************************************************************
talloc a bitmap
****************************************************************************/