From f7564cae4cdd1e2629404c5a1229978451584257 Mon Sep 17 00:00:00 2001 From: Gregor Beck Date: Wed, 20 Mar 2013 13:00:26 +0100 Subject: s3:registry accept windows like long hivenames Signed-off-by: Gregor Beck Reviewed-by: Christian Ambach Autobuild-User(master): Christian Ambach Autobuild-Date(master): Wed Mar 20 17:08:52 CET 2013 on sn-devel-104 --- source3/registry/reg_api.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'source3/registry') diff --git a/source3/registry/reg_api.c b/source3/registry/reg_api.c index c263174bc2..ca990e22f8 100644 --- a/source3/registry/reg_api.c +++ b/source3/registry/reg_api.c @@ -70,6 +70,7 @@ #include "reg_dispatcher.h" #include "reg_objects.h" #include "../librpc/gen_ndr/ndr_security.h" +#include "reg_parse_internal.h" #undef DBGC_CLASS #define DBGC_CLASS DBGC_REGISTRY @@ -232,12 +233,17 @@ WERROR reg_openhive(TALLOC_CTX *mem_ctx, const char *hive, const struct security_token *token, struct registry_key **pkey) { + const struct hive_info *hi; SMB_ASSERT(hive != NULL); - SMB_ASSERT(hive[0] != '\0'); SMB_ASSERT(strchr(hive, '\\') == NULL); - return regkey_open_onelevel(mem_ctx, NULL, hive, token, desired_access, - pkey); + hi = hive_info(hive); + if (hi == NULL) { + return WERR_BADFILE; + } + + return regkey_open_onelevel(mem_ctx, NULL, hi->short_name, token, + desired_access, pkey); } -- cgit