svn commit: samba r24264 - in branches/4.0-regwrite/source: .
lib/registry lib/registry/tests
jelmer at samba.org
jelmer at samba.org
Tue Aug 7 11:08:50 GMT 2007
Author: jelmer
Date: 2007-08-07 11:08:49 +0000 (Tue, 07 Aug 2007)
New Revision: 24264
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=24264
Log:
Fix QueryInfoKey calls.
Modified:
branches/4.0-regwrite/source/lib/registry/local.c
branches/4.0-regwrite/source/lib/registry/tests/registry.c
branches/4.0-regwrite/source/samba4-skip
Changeset:
Modified: branches/4.0-regwrite/source/lib/registry/local.c
===================================================================
--- branches/4.0-regwrite/source/lib/registry/local.c 2007-08-07 09:01:08 UTC (rev 24263)
+++ branches/4.0-regwrite/source/lib/registry/local.c 2007-08-07 11:08:49 UTC (rev 24264)
@@ -236,6 +236,20 @@
return hive_key_flush(local->hive_key);
}
+static WERROR local_get_key_info (TALLOC_CTX *mem_ctx,
+ const struct registry_key *key,
+ const char **classname,
+ uint32_t *num_subkeys,
+ uint32_t *num_values,
+ NTTIME *last_change_time)
+{
+ const struct local_key *local = (const struct local_key *)key;
+
+ return hive_key_get_info(mem_ctx, local->hive_key,
+ classname, num_subkeys, num_values,
+ last_change_time);
+}
+
const static struct registry_operations local_ops = {
.name = "local",
.open_key = local_open_key,
@@ -248,6 +262,7 @@
.delete_key = local_delete_key,
.delete_value = local_delete_value,
.flush_key = local_flush_key,
+ .get_key_info = local_get_key_info,
};
WERROR reg_open_local(TALLOC_CTX *mem_ctx, struct registry_context **ctx,
Modified: branches/4.0-regwrite/source/lib/registry/tests/registry.c
===================================================================
--- branches/4.0-regwrite/source/lib/registry/tests/registry.c 2007-08-07 09:01:08 UTC (rev 24263)
+++ branches/4.0-regwrite/source/lib/registry/tests/registry.c 2007-08-07 11:08:49 UTC (rev 24264)
@@ -132,6 +132,32 @@
return true;
}
+static bool test_query_key(struct torture_context *tctx, const void *_data)
+{
+ const struct registry_context *rctx = _data;
+ struct registry_key *root, *subkey;
+ WERROR error;
+ NTTIME last_changed_time;
+ uint32_t num_subkeys, num_values;
+ const char *classname;
+
+ if (!create_test_key(tctx, rctx, "Munchen", &root, &subkey))
+ return false;
+
+ error = reg_key_get_info(tctx, subkey,
+ &classname,
+ &num_subkeys,
+ &num_values,
+ &last_changed_time);
+
+ torture_assert_werr_ok(tctx, error, "get info key");
+ torture_assert(tctx, classname == NULL, "classname");
+ torture_assert_int_equal(tctx, num_subkeys, 0, "num subkeys");
+ torture_assert_int_equal(tctx, num_values, 0, "num subkeys");
+
+ return true;
+}
+
/**
* Test that the subkeys of a key can be enumerated, that
* the returned parameters for get_subkey_by_index are optional and
@@ -341,6 +367,7 @@
torture_tcase_add_simple_test(tcase, "del_key", test_del_key);
torture_tcase_add_simple_test(tcase, "del_value", test_del_value);
torture_tcase_add_simple_test(tcase, "flush_key", test_flush_key);
+ torture_tcase_add_simple_test(tcase, "query_key", test_query_key);
}
struct torture_suite *torture_registry_registry(TALLOC_CTX *mem_ctx)
Modified: branches/4.0-regwrite/source/samba4-skip
===================================================================
--- branches/4.0-regwrite/source/samba4-skip 2007-08-07 09:01:08 UTC (rev 24263)
+++ branches/4.0-regwrite/source/samba4-skip 2007-08-07 11:08:49 UTC (rev 24264)
@@ -46,5 +46,4 @@
RPC-DSSYNC
RPC-EPMAPPER
RPC-INITSHUTDOWN
-RPC-WINREG
RPC-SAMSYNC
More information about the samba-cvs
mailing list