/* Opens CNID database using particular back-end */
struct _cnid_db *cnid_open(const char *volpath, mode_t mask, char *type, int flags,
- const char *cnidsrv, const char *cnidport)
+ const char *cnidsrv, const char *cnidport, const void *obj, char *uuid)
{
struct _cnid_db *db;
cnid_module *mod = NULL;
}
}
- struct cnid_open_args args = {volpath, mask, flags, cnidsrv, cnidport};
+ struct cnid_open_args args = {volpath, mask, flags, cnidsrv, cnidport, obj, uuid};
db = mod->cnid_open(&args);
if ((mod->flags & CNID_FLAG_SETUID) && !(flags & CNID_FLAG_MEMORY)) {
unblock_signal(cdb->flags);
return ret;
}
+
+/* --------------- */
+int cnid_wipe(struct _cnid_db *cdb)
+{
+ int ret = 0;
+
+ block_signal(cdb->flags);
+ if (cdb->cnid_wipe)
+ ret = cdb->cnid_wipe(cdb);
+ unblock_signal(cdb->flags);
+ return ret;
+}