mirror of
https://github.com/samba-team/samba.git
synced 2025-01-26 10:04:02 +03:00
262dc06b99
ejsnet command line utility (perhaps to be moved to utils later...) rafal (This used to be commit 43f9d9ba71f51007e80b340600a55fb07d89fd4c)
87 lines
1.6 KiB
JavaScript
87 lines
1.6 KiB
JavaScript
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);
|
|
}
|
|
}
|