[1923] in Moira Commits

home help back first fref pref prev next nref lref last post

/svn/moira r4062 - trunk/moira/incremental/ldap

daemon@ATHENA.MIT.EDU (Garry Zacheiss)
Wed Dec 7 16:07:26 2011

Date: Wed, 7 Dec 2011 16:07:25 -0500
From: Garry Zacheiss <zacheiss@MIT.EDU>
Message-Id: <201112072107.pB7L7PXS030320@drugstore.mit.edu>
To: moira-commits@MIT.EDU
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Author: zacheiss
Date: 2011-12-07 16:07:25 -0500 (Wed, 07 Dec 2011)
New Revision: 4062

Modified:
   trunk/moira/incremental/ldap/winad.c
Log:
add a configuration option for updating name information.

Modified: trunk/moira/incremental/ldap/winad.c
===================================================================
--- trunk/moira/incremental/ldap/winad.c	2011-12-07 20:33:13 UTC (rev 4061)
+++ trunk/moira/incremental/ldap/winad.c	2011-12-07 21:07:25 UTC (rev 4062)
@@ -395,6 +395,7 @@
 #define SET_PASSWORD "SET_PASSWORD:"
 #define EXCHANGE "EXCHANGE:"
 #define REALM "REALM:"
+#define UPDATE_NAME_INFO "UPDATE_NAME_INFO:"
 #define ACTIVE_DIRECTORY "ACTIVE_DIRECTORY:"
 #define PORT "PORT:"
 #define PROCESS_MACHINE_CONTAINER "PROCESS_MACHINE_CONTAINER:"
@@ -445,6 +446,7 @@
 int  GroupPopulateDelete = 0;
 int  group_members = 0;
 int  max_group_members = 0;
+int  update_name_info = 1;
 
 struct sockaddr_in  kdc_server;
 int                 kdc_socket;
@@ -4586,12 +4588,15 @@
     strcat(displayName, last);
   }
 
-  if(strlen(displayName))
-    rc = attribute_update(ldap_handle, distinguished_name, displayName, 
-			  "displayName", user_name);
-  else
-    rc = attribute_update(ldap_handle, distinguished_name, user_name,
-			  "displayName", user_name);
+  if(update_name_info) 
+    {
+      if(strlen(displayName))
+	rc = attribute_update(ldap_handle, distinguished_name, displayName, 
+			      "displayName", user_name);
+      else
+	rc = attribute_update(ldap_handle, distinguished_name, user_name,
+			      "displayName", user_name);
+    }
 
   if(!ActiveDirectory)
     {
@@ -4609,27 +4614,30 @@
 			    "eduPersonNickname", user_name);
     }
 
-  if(strlen(first))
-    rc = attribute_update(ldap_handle, distinguished_name, first, 
-			  "givenName", user_name);
-  else
-    rc = attribute_update(ldap_handle, distinguished_name, "",
-			  "givenName", user_name);
-
-  if(strlen(middle) == 1) 
-    rc = attribute_update(ldap_handle, distinguished_name, middle,
-			  "initials", user_name);
-  else 
-    rc = attribute_update(ldap_handle, distinguished_name, "",
-			  "initials", user_name);
+  if(update_name_info) 
+    {
+      if(strlen(first))
+	rc = attribute_update(ldap_handle, distinguished_name, first, 
+			      "givenName", user_name);
+      else
+	rc = attribute_update(ldap_handle, distinguished_name, "",
+			      "givenName", user_name);
+      
+      if(strlen(middle) == 1) 
+	rc = attribute_update(ldap_handle, distinguished_name, middle,
+			      "initials", user_name);
+      else 
+	rc = attribute_update(ldap_handle, distinguished_name, "",
+			      "initials", user_name);
+      
+      if(strlen(last))
+	rc = attribute_update(ldap_handle, distinguished_name, last,
+			      "sn", user_name);
+      else 
+	rc = attribute_update(ldap_handle, distinguished_name, "",
+			      "sn", user_name);
+    }
   
-  if(strlen(last))
-    rc = attribute_update(ldap_handle, distinguished_name, last,
-			  "sn", user_name);
-  else 
-    rc = attribute_update(ldap_handle, distinguished_name, "",
-			  "sn", user_name);
-
   if(ActiveDirectory)
     {
       rc = attribute_update(ldap_handle, distinguished_name, Uid, "uid", 
@@ -9053,6 +9061,17 @@
                     max_group_members = atoi(temp1);
                   }
               }
+	    else if(!strncmp(temp, UPDATE_NAME_INFO, 
+			     strlen(UPDATE_NAME_INFO))) 
+	      {
+		if(strlen(temp) > (strlen(UPDATE_NAME_INFO))) 
+		  {
+		    strcpy(temp1, &temp[strlen(UPDATE_NAME_INFO)]);
+		    StringTrim(temp1);
+		    if (!strcasecmp(temp1, "NO"))
+		      update_name_info = 0;
+		  }
+	      }
             else
 	      {
                 if (strlen(ldap_domain) != 0)


home help back first fref pref prev next nref lref last post