From b11895fd59637e2b2954f18ddc9e6c8fc0075dfd Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 8 Jan 2010 17:48:45 +0000 Subject: [PATCH] See ChangeLog Monotone-Parent: 6447c0cddc2aaf8251e73cdfed175eed08cf5bac Monotone-Revision: 32e14dc57c4f6d9a43de5dfdf3c298091cbf84ea Monotone-Author: ludovic@Sophos.ca Monotone-Date: 2010-01-08T17:48:45 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 7 +++++ Documentation/SOGo Installation Guide.odt | Bin 144836 -> 144804 bytes SoObjects/SOGo/LDAPSource.h | 4 +-- SoObjects/SOGo/LDAPSource.m | 30 ++++++++++++++++++---- 4 files changed, 34 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 71165f526..4b48dc1a9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2010-01-08 Ludovic Marcotte + + * SoObjects/SOGo/LDAPSource.{h,m} - bindFields is now + an array instead of a list of strings separated by commas. + Updated the Installation & Configuration Guide to reflect + this change. + 2010-01-08 Wolfgang Sourdeau * UnitTests/SOGoTestRunner.m: separated class "SOGoTestRunner" diff --git a/Documentation/SOGo Installation Guide.odt b/Documentation/SOGo Installation Guide.odt index 296226d4a7e413282fa5928f1ddd4e79070455c3..486c72a55742ca68eac26ed342af6e48ec78e087 100644 GIT binary patch delta 34802 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

r3s?S)80hXy15b3~+L-|%C7XZy>em6SD zd-tp=MB`tQCoWVIVNCW>tj5fl$Th$nLm>C!0Qs7V5fi=FDWX+oyMOIUCtDl4^t+NLV8a*a>m6n}a z&yRx4rRRl$cC~fm?^Sths;My9iYj1z3K84xRtSoX1@p5yM6L+yxKw9ZrRqI2GU8-{ za8i7Wc)uSb82H{;)ZoOKJ_5#_cf?1SETz7yoVnPr=9c)ioi&l;bg}r+8vsz&A*;k= zbE#v1!RgZN?MZL;Yrj=4Q*s0R$Fj25&N#)jj#rVNji}Mi&&0l+R1bZbkPAX&)Qb|F z?>djHjM{rtTi!KGeBAOA20ix2jr|I}*YCt%ky#_|;=Da=m3d&DE+vy49kUGA0#-;@ z9XG&~u}DNdPjs>S13l4oEO5fPPV%!7XEND76CU}M{!?OkfAPLS>%rL58=tT_lWU*70S6XW<@yJeH}C@;TWR+9fi9{&lNbOCt{8yG;AJIf{~jwBAy zoVdPPtuBD9EYr&I8Vpg;;%ngR72~+lrd+EgUfGCt=S-&K;T|h!%lW0wYnIilU$Vw` zol_{fH3jD;gYMGsdDOZAN!VYB{0dcO;-72@qAaDH}zmW=o9P@3Y|8ua~2oM!F5Mo zXj$j4nM?F0CHe*?2b{*fkEaLMflZ`Rx924_((Owk{)-18n!MzZS#mO@yM__h*l$}p z3CKE+Q%Bex0@>E_J_!4rF3~e|U?ET(FaDK2eOse$NogPRG%^+@Gz9G)5Oi;1_N9Mn zn4DNKNA;4>>8yIh=Q$;XkOT}3Bb8&&d%)NmUyUr)@RyuH>cWiL)0NrDEhLfemD*E( zyN3>ZwmAG;|AzZ!{0UQxo_#Q+^r6H>nyD&qJbZHv0usGjwk`sk6Wg!69^l#$tb)KM zU%d0W20nVjEkLpd{pYs_FE`aYmf7dncH8VpCa;myewSNeFx-9p{sj79{`NOk%_0lB z_5Zb|BTBDSFP2i=J*NmPQpTL>nGQ?*PoeUcD}u6p{#cFJ8mCiyyV}`4&1Gg^G?{?N z5aScr21@tS(K^w~>>)||LZ9?FXCZ7R#e)9EXn?QMp*3O$YNI`=K{S!RP@`Q|S)ZIr z5YZa;rQyVKP#cB9ls~;fz-WHtK9OKpRVK|59Fdfj%d7dIOa}YSF^g6Po&DgVo{14j zOGz*+5mAVFl$6##C)4%Y32^edC0HRb`1j*74JfL!syiHwt(NF^8Ln7*`#oXL@`o3^ zz@H?i2r030k#@Yz!TWWy@n8+*1HNy3f(ZT1RE%(8L6$@KX^@$&InGp%ZL!v~kJqC< zb(A`~foFenjaYEYQYegrDZl)Aw|^NNO|>!b2)u&*)}Bx>P@F~HnvTi3!BH3bdiPC@ z75F(B22^NKyLe$jPN=)aXcmsPdzGwvM~I~rFvWl?n8CV;8eWlbJjKh2lfME+PL#wadHy-Fut`k5`l=UN9u7Zh zKgw?Ne2cVX4PlYspIO8dUIt zzu8@N*JKezFxbZ&IjEqOa2@;MG!!gG5*f)X7Ouy_t1+e>Ueg!%vvJBVqxN}h4w!Ak zm&6e0`I_jA^!%Hxf<=>{JfStQHFlpIWs!~*4^OU;uv9=^GJsK0zdf%PrCSI1|9;~x3sJ_qbV`;{xDp%Y;g_NoAPR?Wq0nbek{LfX!2NB+uX7Xo!8f1U zXEFu~(WWj8@3aZ=R@azA2M%vZ`!uQ?q|7t+{I9$dGCZwC|=^C$!4y z1;M(OC9c!v-0CvGT8n=Uh_n53Q_+W?TrM}30Erv#M+xyYB5zxt4*>10sX=MitQ+Ep z@FH)YEj@c8%)vx;`cv%Ho~_T%FiI$3C?yObn`jKg$4+)gJDdpV(&q3)sP3Dt)1U+k z@q1H-!~(jOKdB?&SOl@5PQn3xH}be

li^PYD=5)=v{q^xVElu#)F)qH+~l$_Y)Q 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 Bgm3@= diff --git a/SoObjects/SOGo/LDAPSource.h b/SoObjects/SOGo/LDAPSource.h index 0f3cfa34a..ab09c6661 100644 --- a/SoObjects/SOGo/LDAPSource.h +++ b/SoObjects/SOGo/LDAPSource.h @@ -52,7 +52,7 @@ NSString *UIDField; NSArray *mailFields; NSString *IMAPHostField; - NSString *bindFields; + NSArray *bindFields; NSString *domain; NSString *contactInfoAttribute; @@ -74,7 +74,7 @@ UIDField: (NSString *) newUIDField mailFields: (NSArray *) newMailFields IMAPHostField: (NSString *) newIMAPHostField - andBindFields: (NSString *) newBindFields; + andBindFields: (id) newBindFields; - (NGLdapEntry *) lookupGroupEntryByUID: (NSString *) theUID; - (NGLdapEntry *) lookupGroupEntryByEmail: (NSString *) theEmail; diff --git a/SoObjects/SOGo/LDAPSource.m b/SoObjects/SOGo/LDAPSource.m index 9287abaaa..958b9f032 100644 --- a/SoObjects/SOGo/LDAPSource.m +++ b/SoObjects/SOGo/LDAPSource.m @@ -266,7 +266,7 @@ static NSArray *commonSearchFields; UIDField: (NSString *) newUIDField mailFields: (NSArray *) newMailFields IMAPHostField: (NSString *) newIMAPHostField - andBindFields: (NSString *) newBindFields + andBindFields: (id) newBindFields { ASSIGN (baseDN, [newBaseDN lowercaseString]); if (newIDField) @@ -280,7 +280,28 @@ static NSArray *commonSearchFields; if (newMailFields) ASSIGN (mailFields, newMailFields); if (newBindFields) - ASSIGN (bindFields, newBindFields); + { + // Before SOGo v1.2.0, bindFields was a comma-separated list + // of values. So it could be configured as: + // + // bindFields = foo; + // bindFields = "foo, bar, baz"; + // + // SOGo v1.2.0 and upwards redefined that parameter as an array + // so we would have instead: + // + // bindFields = (foo); + // bindFields = (foo, bar, baz); + // + // We check for the old format and we support it. + if ([newBindFields isKindOfClass: [NSArray class]]) + ASSIGN(bindFields, newBindFields); + else + { + [self logWithFormat: @"WARNING: using old bindFields format - please update it"]; + ASSIGN(bindFields, [newBindFields componentsSeparatedByString: @","]); + } + } } - (BOOL) _setupEncryption: (NGLdapConnection *) encryptedConn @@ -351,7 +372,7 @@ static NSArray *commonSearchFields; escapedUid = SafeLDAPCriteria (uid); - fields = [[bindFields componentsSeparatedByString: @","] objectEnumerator]; + fields = [bindFields objectEnumerator]; while ((currentField = [fields nextObject])) [qs appendFormat: @" OR (%@='%@')", currentField, escapedUid]; @@ -482,8 +503,7 @@ static NSArray *commonSearchFields; UIDField, escapedUid, mailFormat]; if (bindFields) { - bindFieldsEnum = [[bindFields componentsSeparatedByString: @","] - objectEnumerator]; + bindFieldsEnum = [bindFields objectEnumerator]; while ((currentField = [bindFieldsEnum nextObject])) [qs appendFormat: @" OR (%@='%@')", [currentField stringByTrimmingSpaces], escapedUid]; }