summaryrefslogtreecommitdiff
path: root/swat/scripting/server
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2005-08-22 01:53:06 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:34:19 -0500
commitf35e72d9caed80accb337be2b120c731d683fc5f (patch)
tree4abdb357d3033372b80b1f4fd012afe78d1ade7e /swat/scripting/server
parentf4aa80d88f768d4edbfca2bf0907de0e1c319ec5 (diff)
downloadsamba-f35e72d9caed80accb337be2b120c731d683fc5f.tar.gz
samba-f35e72d9caed80accb337be2b120c731d683fc5f.tar.bz2
samba-f35e72d9caed80accb337be2b120c731d683fc5f.zip
r9466: add display of values as well as keys in the registry editor
(This used to be commit 62d55a250afa3e3923a6b9da7b59177ad59d55a3)
Diffstat (limited to 'swat/scripting/server')
-rw-r--r--swat/scripting/server/regedit.esp30
1 files changed, 24 insertions, 6 deletions
diff --git a/swat/scripting/server/regedit.esp b/swat/scripting/server/regedit.esp
index 31977d5a51..a13ad8afe5 100644
--- a/swat/scripting/server/regedit.esp
+++ b/swat/scripting/server/regedit.esp
@@ -8,10 +8,10 @@ libinclude("winreg.js");
libinclude("server_call.js");
/*
- server side call to return a listing of elements in a winreg path
+ server side call to return a listing of keys in a winreg path
*/
-function enum_path(binding, path) {
- printf("enum_path(%s, %s)\n", binding, path);
+function enum_keys(binding, path) {
+ printf("enum_keys(%s, %s)\n", binding, path);
var reg = winreg_init();
security_init(reg);
@@ -22,13 +22,31 @@ function enum_path(binding, path) {
printVars(status);
return undefined;
}
- var list = winreg_enum_path(reg, path);
- return list;
+ return winreg_enum_path(reg, path);
+}
+
+/*
+ server side call to return a listing of values in a winreg path
+*/
+function enum_values(binding, path) {
+ printf("enum_values(%s, %s)\n", binding, path);
+ var reg = winreg_init();
+ security_init(reg);
+
+ reg.credentials = session.authinfo.credentials;
+
+ var status = reg.connect(binding);
+ if (status.is_ok != true) {
+ printVars(status);
+ return undefined;
+ }
+ return winreg_enum_values(reg, path);
}
/* register a call for clients to make */
var call = servCallObj();
-call.add('enum_path', enum_path);
+call.add('enum_keys', enum_keys);
+call.add('enum_values', enum_values);
/* run the function that was asked for */
call.run();