steffen: server/perl-kolab/Kolab-LDAP LDAP.pm,1.33,1.34

cvs at intevation.de cvs at intevation.de
Fri Jul 8 04:05:38 CEST 2005


Author: steffen

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

Modified Files:
	LDAP.pm 
Log Message:
multidomain shared folders. New folder have the domain encoded in CN, existing folders work as before

Index: LDAP.pm
===================================================================
RCS file: /kolabrepository/server/perl-kolab/Kolab-LDAP/LDAP.pm,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -d -r1.33 -r1.34
--- LDAP.pm	30 Jun 2005 11:12:10 -0000	1.33
+++ LDAP.pm	8 Jul 2005 02:05:35 -0000	1.34
@@ -256,16 +256,18 @@
     }
 
     my $uid = trim($object->get_value($objuidfield)) || 0;
-   if( $p eq 'sf' ) {
-     # We have to create shared folders
-     # with names user.<fldrname>@<domain>
-     my @dcs = split(/,/,$object->dn());
-     my @dn;
-     while( pop( @dcs ) =~ /dc=(.*)/ ) {
-       push(@dn, $1);
-     }
-     if( $#dn > 0 ) { $uid .= '@'.join('.',reverse(@dn)); }
-   }
+    # Intermediate multidomain support:
+    # We accept domain encoded in CN...
+    if( $p eq 'sf' && index( $uid, '@' ) < 0 ) {
+      # We have to create shared folders
+      # with names shared.<fldrname>@<domain>
+      my @dcs = split(/,/,$object->dn());
+      my @dn;
+      while( pop( @dcs ) =~ /dc=(.*)/ ) {
+	push(@dn, $1);
+      }
+      if( $#dn > 0 ) { $uid .= '@'.join('.',reverse(@dn)); }
+    }
     if (!$uid) {
         Kolab::log('L', "Kolab::LDAP::createObject() called with null id attribute `$objuidfield', returning", KOLAB_DEBUG);
         return;





More information about the commits mailing list