You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							47 lines
						
					
					
						
							1.7 KiB
						
					
					
				
			
		
		
	
	
							47 lines
						
					
					
						
							1.7 KiB
						
					
					
				# --- SDE-COPYRIGHT-NOTE-BEGIN --- | 
						|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. | 
						|
# | 
						|
# Filename: package/.../pam_ldap/pam_ldap-178-shadowlastChange.patch | 
						|
# Copyright (C) 2004 - 2006 The T2 SDE Project | 
						|
# | 
						|
# More information can be found in the files COPYING and README. | 
						|
# | 
						|
# This patch file is dual-licensed. It is available under the license the | 
						|
# patched project is licensed under, as long as it is an OpenSource license | 
						|
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms | 
						|
# of the GNU General Public License as published by the Free Software | 
						|
# Foundation; either version 2 of the License, or (at your option) any later | 
						|
# version. | 
						|
# --- SDE-COPYRIGHT-NOTE-END --- | 
						|
## pam_ldap-178-shadowlastChange.patch by Peter Marschall <[email protected]> | 
						|
## | 
						|
## log failure of writing shadowLastChange to syslog | 
						|
 | 
						|
--- ./pam_ldap.c | 
						|
+++ ./pam_ldap.c	2005-03-28 11:46:41.345626723 +0200 | 
						|
@@ -3625,6 +3625,8 @@ | 
						|
     } | 
						|
   else | 
						|
     { | 
						|
+      int errcode; | 
						|
+ | 
						|
       /* update shadowLastChange; may fail if not shadowAccount */ | 
						|
       snprintf (buf, sizeof buf, "%ld", time (NULL) / (60 * 60 * 24)); | 
						|
       strvals[0] = buf; | 
						|
@@ -3637,8 +3639,14 @@ | 
						|
       mods[0] = &mod; | 
						|
       mods[1] = NULL; | 
						|
  | 
						|
-      /* do this silently because it may fail */ | 
						|
-      (void) ldap_modify_s (session->ld, session->info->userdn, mods); | 
						|
+      /* Only log errors because it may fail */ | 
						|
+      errcode = ldap_modify_s (session->ld, session->info->userdn, mods); | 
						|
+      if (errcode != LDAP_SUCCESS) | 
						|
+      { | 
						|
+	syslog (LOG_WARNING, | 
						|
+			"pam_ldap: Unable to update shadowLastChange attribute: %s", | 
						|
+			ldap_err2string (rc)); | 
						|
+      } | 
						|
  | 
						|
       snprintf (errmsg, sizeof errmsg, | 
						|
 		"LDAP password information changed for %s", username);
 | 
						|
 |