diff options
Diffstat (limited to 'webapps/scripting/server')
-rw-r--r-- | webapps/scripting/server/regedit.esp | 51 | ||||
-rw-r--r-- | webapps/scripting/server/status.esp | 27 |
2 files changed, 78 insertions, 0 deletions
diff --git a/webapps/scripting/server/regedit.esp b/webapps/scripting/server/regedit.esp new file mode 100644 index 0000000000..58ba695c47 --- /dev/null +++ b/webapps/scripting/server/regedit.esp @@ -0,0 +1,51 @@ +<% +/* + server side AJAJ functions for registry editing. These go along + with scripting/client/regedit.js +*/ +libinclude("base.js"); +libinclude("winreg.js"); +libinclude("server_call.js"); + +/* + server side call to return a listing of keys in a winreg path +*/ +function enum_keys(binding, path) { + printf("enum_keys(%s, %s)\n", binding, path); + var reg = winregObj(); + + reg.credentials = session.authinfo.credentials; + + var status = reg.connect(binding); + if (status.is_ok != true) { + printVars(status); + return undefined; + } + return reg.enum_path(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 = winregObj(); + + reg.credentials = session.authinfo.credentials; + + var status = reg.connect(binding); + if (status.is_ok != true) { + printVars(status); + return undefined; + } + return reg.enum_values(path); +} + +/* register a call for clients to make */ +var call = servCallObj(); +call.add('enum_keys', enum_keys); +call.add('enum_values', enum_values); + +/* run the function that was asked for */ +call.run(); +%> diff --git a/webapps/scripting/server/status.esp b/webapps/scripting/server/status.esp new file mode 100644 index 0000000000..8ca2067d49 --- /dev/null +++ b/webapps/scripting/server/status.esp @@ -0,0 +1,27 @@ +<% + +libinclude("management.js"); +libinclude("server_call.js"); + +function serverInfo() +{ + var info = new Object(); + info["NBT Server"] = server_status("nbt"); + info["WINS Server"] = server_status("wins"); + info["CLDAP Server"] = server_status("cldap"); + info["Kerberos Server"] = server_status("kdc"); + info["SMB Server"] = stream_server_status("smb"); + info["LDAP Server"] = stream_server_status("ldap"); + info["RPC Server"] = stream_server_status("rpc"); + + return info; +} + +/* register a call for clients to make */ +var call = servCallObj(); +call.add('serverInfo', serverInfo); + +/* run the function that was asked for */ +call.run(); + +%> |