Patch logon time, samba-3.0.5pre1, ldap backend

Jianliang Lu j.lu at tiesse.com
Wed Jun 9 09:48:08 GMT 2004


I've posted this patch some times ago, now I post it for 3.0.5pre1. 
The logon time will be updated for interactive logon, and you should 
configure it in smb.conf with the new parameter "logon time = yes".
I hope that this will be useful for Samba community. In our case we have the 
policy that if a user has not logged for 3 months it will be removed from the 
domain. 

Jianliang Lu
TieSse s.p.a.     Ivrea (To) - Italy
j.lu at tiesse.com   luj at libero.it
http://www.tiesse.com

------------------------ patch -----------------------

--- samba-3.0.5pre1/source/param/loadparm.c.orig	Wed Jun  9 09:45:54 
2004
+++ samba-3.0.5pre1/source/param/loadparm.c	Wed Jun  9 09:46:16 2004
@@ -286,6 +286,7 @@
 	BOOL bUnixExtensions;
 	BOOL bDisableNetbios;
 	BOOL bKernelChangeNotify; 
+	BOOL bLogonTime;
 	int restrict_anonymous;
 	int name_cache_timeout;
 	int client_signing;
@@ -1017,6 +1018,7 @@
 	{"abort shutdown script", P_STRING, P_GLOBAL, 
&Globals.szAbortShutdownScript, NULL, NULL, FLAG_ADVANCED}, 
 
 	{"logon script", P_STRING, P_GLOBAL, &Globals.szLogonScript, NULL, 
NULL, FLAG_ADVANCED}, 
+    {"logon time", P_BOOL, P_GLOBAL, &Globals.bLogonTime, NULL, NULL, 
FLAG_ADVANCED},
 	{"logon path", P_STRING, P_GLOBAL, &Globals.szLogonPath, NULL, NULL, 
FLAG_ADVANCED}, 
 	{"logon drive", P_STRING, P_GLOBAL, &Globals.szLogonDrive, NULL, 
NULL, FLAG_ADVANCED}, 
 	{"logon home", P_STRING, P_GLOBAL, &Globals.szLogonHome, NULL, NULL, 
FLAG_ADVANCED}, 
@@ -1789,6 +1791,7 @@
 FN_GLOBAL_INTEGER(lp_oplock_break_wait_time, &Globals.oplock_break_wait_time)
 FN_GLOBAL_INTEGER(lp_lock_spin_count, &Globals.iLockSpinCount)
 FN_GLOBAL_INTEGER(lp_lock_sleep_time, &Globals.iLockSpinTime)
+FN_GLOBAL_BOOL(lp_logon_time, &Globals.bLogonTime)
 FN_LOCAL_STRING(lp_preexec, szPreExec)
 FN_LOCAL_STRING(lp_postexec, szPostExec)
 FN_LOCAL_STRING(lp_rootpreexec, szRootPreExec)

--- samba-3.0.5pre1/source/rpc_server/srv_netlog_nt.c.orig	Wed Jun  9 
09:45:54 2004
+++ samba-3.0.5pre1/source/rpc_server/srv_netlog_nt.c	Wed Jun  9 09:45:54 
2004
@@ -739,6 +739,18 @@
 		}
 		ZERO_STRUCT(netlogon_sess_key);
 		
+
+		if ((lp_logon_time()) && (ctr->switch_value == 
INTERACTIVE_LOGON_TYPE)){
+			if (!pdb_set_logon_time(sampw, time(NULL), 
PDB_CHANGED))
+	   	          DEBUG(0, ("srv_netlog_nt.c : pdb_set_logon_time 
fialed!\n"));
+
+ 			become_root();
+			if(!pdb_update_sam_account(sampw))
+				DEBUG(0, ("Failed to modify entry for user % 
s.\n",
+							pdb_get_username
(sampw)));
+			unbecome_root();
+		}
+	
 		init_net_user_info3(p->mem_ctx, usr_info, 
 				    user_rid,
 				    group_rid,   



More information about the samba-technical mailing list