summaryrefslogtreecommitdiff
path: root/source4/lib/registry/reg_samba.c
diff options
context:
space:
mode:
Diffstat (limited to 'source4/lib/registry/reg_samba.c')
-rw-r--r--source4/lib/registry/reg_samba.c19
1 files changed, 15 insertions, 4 deletions
diff --git a/source4/lib/registry/reg_samba.c b/source4/lib/registry/reg_samba.c
index a19029524d..62973a14ab 100644
--- a/source4/lib/registry/reg_samba.c
+++ b/source4/lib/registry/reg_samba.c
@@ -23,12 +23,12 @@
#undef DBGC_CLASS
#define DBGC_CLASS DBGC_REGISTRY
-static WERROR reg_samba_get_hive (struct registry_context *ctx, uint32 hkey, struct registry_key **k)
+static WERROR reg_samba_get_predef (struct registry_context *ctx, uint32 hkey, struct registry_key **k)
{
WERROR error;
const char *conf;
char *backend, *location;
- const char *hivename = reg_get_hkey_name(hkey);
+ const char *hivename = reg_get_predef_name(hkey);
*k = NULL;
@@ -45,7 +45,18 @@ static WERROR reg_samba_get_hive (struct registry_context *ctx, uint32 hkey, str
*location = '\0';
location++;
}
-
+
+ /* FIXME: Different hive backend for HKEY_CLASSES_ROOT: merged view of HKEY_LOCAL_MACHINE\Software\Classes
+ * and HKEY_CURRENT_USER\Software\Classes */
+
+ /* FIXME: HKEY_CURRENT_CONFIG is an alias for HKEY_LOCAL_MACHINE\System\CurrentControlSet\Hardware Profiles\Current */
+
+ /* FIXME: HKEY_PERFORMANCE_DATA is dynamically generated */
+
+ /* FIXME: HKEY_LOCAL_MACHINE\Hardware is autogenerated */
+
+ /* FIXME: HKEY_LOCAL_MACHINE\Security\SAM is an alias for HKEY_LOCAL_MACHINE\SAM */
+
error = reg_open_hive(ctx, backend, location, NULL, k);
talloc_destroy(backend);
@@ -56,7 +67,7 @@ static WERROR reg_samba_get_hive (struct registry_context *ctx, uint32 hkey, str
WERROR reg_open_local (struct registry_context **ctx)
{
*ctx = talloc_p(NULL, struct registry_context);
- (*ctx)->get_hive = reg_samba_get_hive;
+ (*ctx)->get_predefined_key = reg_samba_get_predef;
return WERR_OK;
}