1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-03 12:58:35 +03:00

registry: add function regdb_key_exists() to check for existence of a key.

The existence of the registry key entry (and not the values entry!) is
taken as the criterion for existence.

Michael
(This used to be commit 207a0ece45d947608df3f764e6bd9b4525d41011)
This commit is contained in:
Michael Adam 2008-04-29 17:17:02 +02:00
parent 167d54cc67
commit 6ec4c8631a

View File

@ -27,6 +27,8 @@
static struct db_context *regdb = NULL;
static int regdb_refcount;
static bool regdb_key_exists(const char *key);
/* List the deepest path into the registry. All part components will be created.*/
/* If you want to have a part of the path controlled by the tdb and part by
@ -725,6 +727,21 @@ static TDB_DATA regdb_fetch_key_internal(const char *key, TALLOC_CTX *mem_ctx)
return dbwrap_fetch_bystring(regdb, mem_ctx, path);
}
static bool regdb_key_exists(const char *key)
{
TALLOC_CTX *mem_ctx = talloc_stackframe();
TDB_DATA value;
bool ret;
value = regdb_fetch_key_internal(key, mem_ctx);
ret = (value.dptr != NULL);
TALLOC_FREE(mem_ctx);
return ret;
}
/***********************************************************************
Retrieve an array of strings containing subkeys. Memory should be
released by the caller.