svn commit: samba r20143 - in branches/SAMBA_4_0: source/scripting/ejs testprogs/ejs

mimir at samba.org mimir at samba.org
Tue Dec 12 23:01:51 GMT 2006


Author: mimir
Date: 2006-12-12 23:01:51 +0000 (Tue, 12 Dec 2006)
New Revision: 20143

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=20143

Log:
a bit of experiments before doing serious changes in ejsnet.


rafal


Modified:
   branches/SAMBA_4_0/source/scripting/ejs/ejsnet.c
   branches/SAMBA_4_0/testprogs/ejs/ejsnet.js


Changeset:
Modified: branches/SAMBA_4_0/source/scripting/ejs/ejsnet.c
===================================================================
--- branches/SAMBA_4_0/source/scripting/ejs/ejsnet.c	2006-12-12 22:57:43 UTC (rev 20142)
+++ branches/SAMBA_4_0/source/scripting/ejs/ejsnet.c	2006-12-12 23:01:51 UTC (rev 20143)
@@ -336,6 +336,11 @@
 	struct libnet_context *ctx;
 	const char *userman_domain = NULL;
 	struct libnet_UserInfo req;
+	struct MprVar mprUserInfo;
+	struct MprVar mprAccountName, mprFullName, mprDescription;
+	struct MprVar mprHomeDir, mprHomeDrive, mprComment;
+	struct MprVar mprLogonScript;
+	struct MprVar mprAcctExpiry, mprAllowPassChange, mprForcePassChange;
 
 	if (argc != 1) {
 		ejsSetErrorMsg(eid, "argument 1 must be a string");
@@ -364,9 +369,44 @@
 		ejsSetErrorMsg(eid, "%s", req.out.error_string);
 	}
 
-	/* TODO: create user info object and pass received properties */
+	/* create UserInfo object */
+	mprUserInfo = mprObject("UserInfo");
 
+	mprAccountName = mprString(req.out.account_name);
+	mprFullName = mprString(req.out.full_name);
+	mprDescription = mprString(req.out.description);
+	mprHomeDir = mprString(req.out.home_directory);
+	mprHomeDrive = mprString(req.out.home_drive);
+	mprComment = mprString(req.out.comment);
+	mprLogonScript = mprString(req.out.logon_script);
+	mprAcctExpiry = mprString(timestring(mem_ctx, req.out.acct_expiry->tv_sec));
+	mprAllowPassChange = mprString(timestring(mem_ctx, req.out.allow_password_change->tv_sec));
+	mprForcePassChange = mprString(timestring(mem_ctx, req.out.force_password_change->tv_sec));
+
+	status = mprSetVar(&mprUserInfo, "AccountName", mprAccountName);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+	status = mprSetVar(&mprUserInfo, "FullName", mprFullName);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+	status = mprSetVar(&mprUserInfo, "Description", mprDescription);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+	status = mprSetVar(&mprUserInfo, "HomeDirectory", mprHomeDir);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+	status = mprSetVar(&mprUserInfo, "HomeDrive", mprHomeDrive);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+	status = mprSetVar(&mprUserInfo, "Comment", mprComment);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+	status = mprSetVar(&mprUserInfo, "LogonScript", mprLogonScript);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+	status = mprSetVar(&mprUserInfo, "AcctExpiry", mprAcctExpiry);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+	status = mprSetVar(&mprUserInfo, "AllowPasswordChange", mprAllowPassChange);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+	status = mprSetVar(&mprUserInfo, "ForcePasswordChange", mprForcePassChange);
+	if (!NT_STATUS_IS_OK(status)) goto done;
+
+done:
 	talloc_free(mem_ctx);
+	mpr_Return(eid, mprUserInfo);
 	return 0;
 }
 

Modified: branches/SAMBA_4_0/testprogs/ejs/ejsnet.js
===================================================================
--- branches/SAMBA_4_0/testprogs/ejs/ejsnet.js	2006-12-12 22:57:43 UTC (rev 20142)
+++ branches/SAMBA_4_0/testprogs/ejs/ejsnet.js	2006-12-12 23:01:51 UTC (rev 20143)
@@ -30,6 +30,12 @@
 	return -1;
 }
 
+var info = usr_ctx.Info(options.ARGV[1]);
+println("UserInfo.AccountName = " + info.AccountName);
+println("UserInfo.Description = " + info.Description);
+println("UserInfo.FullName = " + info.FullName);
+println("UserInfo.AcctExpiry = " + info.AcctExpiry);
+
 var status = usr_ctx.Delete(options.ARGV[1]);
 if (status.is_ok != true) {
 	println("Failed to delete user account " + options.ARGV[1] + ": " + status.errstr);



More information about the samba-cvs mailing list