summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Adam <obnox@samba.org>2008-01-21 00:28:39 +0100
committerMichael Adam <obnox@samba.org>2008-01-21 08:49:12 +0100
commit99186bf72642ad81505cb9588a444da4e89b3be2 (patch)
tree029ddaa57b84e875d136afe46c9bd7c59e2a60c1
parentb5666ceefbeae35dfb390c0be6a6dc5caa1f0406 (diff)
downloadsamba-99186bf72642ad81505cb9588a444da4e89b3be2.tar.gz
samba-99186bf72642ad81505cb9588a444da4e89b3be2.tar.bz2
samba-99186bf72642ad81505cb9588a444da4e89b3be2.zip
Extract regkey_open_internal() from reg_frontend.c to new reg_util_legacy.c
reg_openpath should be used instead of this function (along with the reg_api interface). Last callers of this function are in services_db.c Michael (This used to be commit 0005b88d74fca1ea1410c9911d504b0a636a0472)
-rw-r--r--source3/Makefile.in1
-rw-r--r--source3/registry/reg_frontend.c18
-rw-r--r--source3/registry/reg_util_legacy.c47
3 files changed, 48 insertions, 18 deletions
diff --git a/source3/Makefile.in b/source3/Makefile.in
index f6a2c2eee5..674dd2aa40 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -437,6 +437,7 @@ REGISTRY_BACKENDS = registry/reg_backend_printing.o \
REGISTRY_OBJ = registry/reg_frontend.o registry/reg_cachehook.o \
registry/reg_eventlog.o \
registry/reg_util.o registry/reg_perfcount.o \
+ registry/reg_util_legacy.o \
registry/reg_api.o \
registry/reg_frontend_hilvl.o \
$(REGISTRY_BACKENDS) \
diff --git a/source3/registry/reg_frontend.c b/source3/registry/reg_frontend.c
index 9a35eb2263..fa210b4c05 100644
--- a/source3/registry/reg_frontend.c
+++ b/source3/registry/reg_frontend.c
@@ -99,21 +99,3 @@ bool init_registry( void )
TALLOC_FREE(frame);
return ret;
}
-
-WERROR regkey_open_internal( TALLOC_CTX *ctx, REGISTRY_KEY **regkey,
- const char *path,
- const struct nt_user_token *token,
- uint32 access_desired )
-{
- struct registry_key *key;
- WERROR err;
-
- err = reg_open_path(NULL, path, access_desired, token, &key);
- if (!W_ERROR_IS_OK(err)) {
- return err;
- }
-
- *regkey = talloc_move(ctx, &key->key);
- TALLOC_FREE(key);
- return WERR_OK;
-}
diff --git a/source3/registry/reg_util_legacy.c b/source3/registry/reg_util_legacy.c
new file mode 100644
index 0000000000..3e68025ae9
--- /dev/null
+++ b/source3/registry/reg_util_legacy.c
@@ -0,0 +1,47 @@
+/*
+ * Unix SMB/CIFS implementation.
+ * Virtual Windows Registry Layer
+ * Copyright (C) Gerald Carter 2002-2005
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+/* Implementation of registry frontend view functions. */
+
+#include "includes.h"
+
+#undef DBGC_CLASS
+#define DBGC_CLASS DBGC_REGISTRY
+
+/**
+ * legacy open key function that should be replaced by uses of
+ * reg_open_path
+ */
+WERROR regkey_open_internal( TALLOC_CTX *ctx, REGISTRY_KEY **regkey,
+ const char *path,
+ const struct nt_user_token *token,
+ uint32 access_desired )
+{
+ struct registry_key *key;
+ WERROR err;
+
+ err = reg_open_path(NULL, path, access_desired, token, &key);
+ if (!W_ERROR_IS_OK(err)) {
+ return err;
+ }
+
+ *regkey = talloc_move(ctx, &key->key);
+ TALLOC_FREE(key);
+ return WERR_OK;
+}