diff options
Diffstat (limited to 'testprogs/ejs/ejsnet')
-rw-r--r-- | testprogs/ejs/ejsnet/nethost.js | 45 | ||||
-rw-r--r-- | testprogs/ejs/ejsnet/netusr.js | 86 |
2 files changed, 131 insertions, 0 deletions
diff --git a/testprogs/ejs/ejsnet/nethost.js b/testprogs/ejs/ejsnet/nethost.js new file mode 100644 index 0000000000..9e11ae89c5 --- /dev/null +++ b/testprogs/ejs/ejsnet/nethost.js @@ -0,0 +1,45 @@ +function PrintNetHostHelp() +{ + println("Host management - available commands:"); + println("\t domainlist - list users in specified domain"); +} + + +function ListDomains(hostCtx) +{ + var domain; + + var list = hostCtx.DomainList(); + if (list == undefined) { + println("Error when listing domains"); + return -1; + } + + for (var i = 0; i < list.Count; i++) { + domain = list.Domains[i]; + printf("%s\n", domain.Name); + } + + printf("\nResult: %s\n", list.Status.errstr); +} + + +function HostManager(ctx, options) +{ + var hostCtx; + + if (options.ARGV.length < 2) { + PrintNetHostHelp(); + return -1; + } + + var hostCmd = options.ARGV[1]; + + if (hostCmd == "domainlist") { + hostCtx = ctx.HostMgr(); + ListDomains(hostCtx); + + } else { + println("unknown command"); + } +} diff --git a/testprogs/ejs/ejsnet/netusr.js b/testprogs/ejs/ejsnet/netusr.js new file mode 100644 index 0000000000..da6e851ce7 --- /dev/null +++ b/testprogs/ejs/ejsnet/netusr.js @@ -0,0 +1,86 @@ +function PrintNetUsrHelp(options) +{ + println("User management - available commands:"); + println("\t list - list users in specified domain"); + println("\t info - display user account information"); +} + + +function ListUsers(usrCtx) +{ + var list, user; + var finished = false; + + for (list = usrCtx.List(list); list.Status.is_ok && !finished; list = usrCtx.List(list)) { + for (i = 0; i < list.Count; i++) { + user = list.Users[i]; + printf("%s\n", user.Username); + } + + finished = list.EndOfList; + } + + printf("\nResult: %s\n", list.Status.errstr); +} + + +function UserInfo(usrCtx, username) +{ + var info; + + info = usrCtx.Info(username); + if (info == null) { + println("Account unknown"); + return -1; + } + + println("User account info:\n"); + printf("AccountName = %s\n", info.AccountName); + printf("Description = %s\n", info.Description); + printf("FullName = %s\n", info.FullName); + printf("AcctExpiry = %s\n", info.AcctExpiry); +} + + +function UserManager(ctx, options) +{ + var usrCtx; + + if (options.ARGV.length < 2) { + PrintNetUsrHelp(options); + return -1; + + } + + var usrCmd = options.ARGV[1]; + + if (usrCmd == "create") { + + } else if (usrCmd == "info") { + var userName; + + if (options.ARGV.length > 2) { + userName = options.ARGV[2]; + } else { + println("No username provided"); + return -1; + } + usrCtx = ctx.UserMgr(); + + UserInfo(usrCtx, userName); + + } else if (usrCmd == "list") { + + if (options.ARGV.length > 2) { + usrCtx = ctx.UserMgr(options.ARGV[2]); + } else { + usrCtx = ctx.UserMgr(); + } + + ListUsers(usrCtx); + + } else { + println("Unknown command specified."); + PrintNetUsrHelp(options); + } +} |