[CalendarServer-users] Users in LDAP: restrictEnabledRecords not working?
Morgen Sagen
sagen at apple.com
Fri Aug 24 07:42:43 PDT 2012
Yeah, you can't mix and match individual files from various versions. I recommend you don't try using restrictToGroup with LDAP until Debian can update the entire project to the new code.
On Aug 24, 2012, at 12:09 AM, tobiasbp <tobiasbp at gmail.com> wrote:
>> Actually, the LDAP implementation for the restrictToGroup feature is pretty broken. I just checked in a fix:
>>
>> https://trac.calendarserver.org/changeset/9741/CalendarServer/trunk
>
> I replaced the original version of ldapdirectory.py (On Debian Wheezy)
> with your new version if ldapdirectory.
>
> Listing my users now throws this error:
> Traceback (most recent call last):
> File "/usr/bin/calendarserver_manage_principals", line 32, in <module>
> main()
> File "/usr/lib/python2.7/dist-packages/calendarserver/tools/principals.py",
> line 250, in main
> config.directory = getDirectory()
> File "/usr/lib/python2.7/dist-packages/calendarserver/tools/util.py",
> line 141, in getDirectory
> BaseDirectoryService = namedClass(config.DirectoryService.type)
> File "/usr/lib/python2.7/dist-packages/twisted/python/reflect.py",
> line 351, in namedObject
> module = namedModule('.'.join(classSplit[:-1]))
> File "/usr/lib/python2.7/dist-packages/twisted/python/reflect.py",
> line 339, in namedModule
> topLevel = __import__(name)
> File "/usr/lib/python2.7/dist-packages/twistedcaldav/directory/ldapdirectory.py",
> line 59, in <module>
> from twistedcaldav.directory.util import splitIntoBatches
> ImportError: cannot import name splitIntoBatches
>
> Looks like the my version of twisted does not have "splitIntoBatches".
>
> Maybe this section in the new code could be rewritten to not use
> "splitIntoBatches" for better compatability?:
>
>
> for batch in splitIntoBatches(valuesToFetch, self.batchSize):
> fields = []
> for value in batch:
> fields.append([attributeToSearch, value,
> False, "equals"])
> result = (yield self.recordsMatchingFields(fields,
> recordType=self.recordType_groups))
> results.extend(result)
>
> Seems like that is the only code using "splitIntoBatches".
More information about the calendarserver-users
mailing list