#include <ucw/clists.h>
#include <ucw/threads.h>
+#ifdef CONFIG_UCW_CLEAN_ABI
+#define res_add ucw_res_add
+#define res_alloc ucw_res_alloc
+#define res_detach ucw_res_detach
+#define res_drop ucw_res_drop
+#define res_dump ucw_res_dump
+#define res_eltpool ucw_res_eltpool
+#define res_for_fd ucw_res_for_fd
+#define res_free ucw_res_free
+#define res_malloc ucw_res_malloc
+#define res_malloc_zero ucw_res_malloc_zero
+#define res_mempool ucw_res_mempool
+#define res_realloc ucw_res_realloc
+#define res_subpool ucw_res_subpool
+#define rp_commit ucw_rp_commit
+#define rp_delete ucw_rp_delete
+#define rp_detach ucw_rp_detach
+#define rp_dump ucw_rp_dump
+#define rp_new ucw_rp_new
+#endif
+
/**
* A resource pool. It contains a name of the pool (which is printed
* in all debugging dumps, otherwise it is not used) and a bunch of
const char *name;
struct mempool *mpool; // If set, resources are allocated from the mempool, otherwise by xmalloc()
struct resource *subpool_of;
- uns default_res_flags; // RES_FLAG_xxx for newly allocated resources
+ uint default_res_flags; // RES_FLAG_xxx for newly allocated resources
};
/**
struct resource {
cnode n;
struct respool *rpool;
- uns flags; // RES_FLAG_xxx
+ uint flags; // RES_FLAG_xxx
const struct res_class *rclass;
void *priv; // Private to the class
// More data specific for the particular class can follow
void rp_delete(struct respool *rp); /** Deletes a resource pool, freeing all resources. **/
void rp_detach(struct respool *rp); /** Deletes a resource pool, detaching all resources. **/
void rp_commit(struct respool *rp); /** Deletes a resource pool. Temporary resources are freed, stable resources are detached. **/
-void rp_dump(struct respool *rp, uns indent); /** Prints out a debugging dump of a pool to stdout. **/
+void rp_dump(struct respool *rp, uint indent); /** Prints out a debugging dump of a pool to stdout. **/
/** Returns a pointer to the currently active resource pool or NULL, if none exists. **/
static inline struct respool *rp_current(void)
return orp;
}
-struct resource *res_alloc(const struct res_class *rc) LIKE_MALLOC; // Returns NULL if there is no pool active
+struct resource *res_alloc(const struct res_class *rc) LIKE_MALLOC; // Dies if there is no pool active
-void res_dump(struct resource *r, uns indent); /** Prints out a debugging dump of the resource to stdout. **/
+void res_dump(struct resource *r, uint indent); /** Prints out a debugging dump of the resource to stdout. **/
/**
* Frees a resource, unlinking it from its pool.
const char *name; // The name of the class (included in debugging dumps)
void (*detach)(struct resource *r); // The callbacks
void (*free)(struct resource *r);
- void (*dump)(struct resource *r, uns indent);
- uns res_size; // Size of the resource structure (0=default)
+ void (*dump)(struct resource *r, uint indent);
+ uint res_size; // Size of the resource structure (0=default)
};
/**