[CalendarServer-changes] [1859]
CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
source_changes at macosforge.org
source_changes at macosforge.org
Mon Sep 10 13:51:55 PDT 2007
Revision: 1859
http://trac.macosforge.org/projects/calendarserver/changeset/1859
Author: dreid at apple.com
Date: 2007-09-10 13:51:55 -0700 (Mon, 10 Sep 2007)
Log Message:
-----------
Don't expand full SACL group if we want a specific shortName, let us find the record and we'll throw it out if they don't have a ServicesLocator.
Modified Paths:
--------------
CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
Modified: CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py 2007-09-10 20:49:24 UTC (rev 1858)
+++ CalendarServer/trunk/twistedcaldav/directory/appleopendirectory.py 2007-09-10 20:51:55 UTC (rev 1859)
@@ -478,31 +478,34 @@
if self.requireComputerRecord:
if self.isWorkgroupServer and recordType == DirectoryService.recordType_users:
- results = opendirectory.queryRecordsWithAttribute(
- self.directory,
- dsattributes.kDSNAttrRecordName,
- _saclGroup,
- dsattributes.eDSExact,
- False,
- dsattributes.kDSStdRecordTypeGroups,
- [dsattributes.kDSNAttrGroupMembers,
- dsattributes.kDSNAttrNestedGroups])
+ if shortName is None:
+ results = opendirectory.queryRecordsWithAttribute(
+ self.directory,
+ dsattributes.kDSNAttrRecordName,
+ _saclGroup,
+ dsattributes.eDSExact,
+ False,
+ dsattributes.kDSStdRecordTypeGroups,
+ [dsattributes.kDSNAttrGroupMembers,
+ dsattributes.kDSNAttrNestedGroups])
- members = results.get(_saclGroup, {}).get(
- dsattributes.kDSNAttrGroupMembers, [])
+ members = results.get(_saclGroup, {}).get(
+ dsattributes.kDSNAttrGroupMembers, [])
- nestedGroups = results.get(_saclGroup, {}).get(
- dsattributes.kDSNAttrNestedGroups, [])
+ nestedGroups = results.get(_saclGroup, {}).get(
+ dsattributes.kDSNAttrNestedGroups, [])
- guidQueries = []
+ guidQueries = []
- for GUID in self._expandGroupMembership(members, nestedGroups):
- guidQueries.append(
- dsquery.match(dsattributes.kDS1AttrGeneratedUID,
- GUID, dsattributes.eDSExact))
+ for GUID in self._expandGroupMembership(members,
+ nestedGroups):
+ guidQueries.append(
+ dsquery.match(dsattributes.kDS1AttrGeneratedUID,
+ GUID, dsattributes.eDSExact))
- query = dsquery.expression(dsquery.expression.OR, guidQueries)
+ query = dsquery.expression(dsquery.expression.OR,
+ guidQueries)
else:
subquery = dsquery.match(dsattributes.kDSNAttrServicesLocator, self.servicetag, dsattributes.eDSExact)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20070910/470e1bb3/attachment.html
More information about the calendarserver-changes
mailing list