steffen: server/perl-kolab/Kolab Kolab.pm,1.26,1.27

cvs at intevation.de cvs at intevation.de
Thu Jul 14 23:39:51 CEST 2005


Author: steffen

Update of /kolabrepository/server/perl-kolab/Kolab
In directory doto:/tmp/cvs-serv12581/Kolab

Modified Files:
	Kolab.pm 
Log Message:
patch for Issue845 applied (groupOfNames cleanup handling)

Index: Kolab.pm
===================================================================
RCS file: /kolabrepository/server/perl-kolab/Kolab/Kolab.pm,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- Kolab.pm	30 Jun 2005 12:35:34 -0000	1.26
+++ Kolab.pm	14 Jul 2005 21:39:49 -0000	1.27
@@ -331,6 +331,38 @@
         $config{'sf_field_quota'} = 'cyrus-userquota' if (!exists $config{'sf_field_quota'});
     }
 
+    # The `group_XXX' variables are the distribution list/groups 
+    # equivalents of the `user_XXX' variables
+    $config{'group_ldap_uri'} = $config{'ldap_uri'} if (!exists $config{'group_ldap_uri'});
+
+    if (!($tempval = URI->new($config{'group_ldap_uri'}))) {
+        &log('C', "Unable to parse group_ldap_uri `" . $config{'group_ldap_uri'} . "'", KOLAB_ERROR);
+#        exit(1);
+	$error = 1;
+    } else {
+        $config{'group_ldap_ip'} = $tempval->host;
+        $config{'group_ldap_port'} = $tempval->port;
+    }
+
+    $config{'group_bind_dn'} = $config{'bind_dn'} if (!exists $config{'group_bind_dn'});
+    $config{'group_bind_pw'} = $config{'bind_pw'} if (!exists $config{'group_bind_pw'});
+    $config{'group_dn_list'} = $config{'base_dn'} if (!exists $config{'group_dn_list'});
+    $config{'group_directory_mode'} = $config{'directory_mode'} if (!exists $config{'group_directory_mode'});
+
+    $config{'group_object_class'} = 'kolabgroupofnames' if (!exists $config{'group_object_class'});
+
+    if ($config{'group_directory_mode'} eq 'ad') {
+        # AD
+        $config{'group_field_deleted'} = 'isDeleted' if (!exists $config{'group_field_deleted'});
+        $config{'group_field_modified'} = 'whenChanged' if (!exists $config{'group_field_modified'});
+        $config{'group_field_guid'} = 'entryUUID' if (!exists $config{'group_field_guid'});
+    } else {
+        # slurd/default
+        $config{'group_field_deleted'} = 'kolabdeleteflag' if (!exists $config{'group_field_deleted'});
+        $config{'group_field_modified'} = 'modifytimestamp' if (!exists $config{'group_field_modified'});
+        $config{'group_field_guid'} = 'entryUUID' if (!exists $config{'group_field_guid'});
+    }
+
     # `gyard_deletion_period' specifies how many minutes to leave lost users in
     # the graveyard before deleting them.
     # Defaults to seven days.





More information about the commits mailing list