[CalendarServer-changes] [898] CalendarServer/branches/users/dreid/sudoers

source_changes at macosforge.org source_changes at macosforge.org
Fri Dec 22 11:26:19 PST 2006


Revision: 898
          http://trac.macosforge.org/projects/calendarserver/changeset/898
Author:   dreid at apple.com
Date:     2006-12-22 11:26:19 -0800 (Fri, 22 Dec 2006)

Log Message:
-----------
set up the aggregate directory service and the sudoDirectory

Modified Paths:
--------------
    CalendarServer/branches/users/dreid/sudoers/conf/caldavd-test.plist
    CalendarServer/branches/users/dreid/sudoers/twistedcaldav/directory/sudo.py
    CalendarServer/branches/users/dreid/sudoers/twistedcaldav/tap.py

Modified: CalendarServer/branches/users/dreid/sudoers/conf/caldavd-test.plist
===================================================================
--- CalendarServer/branches/users/dreid/sudoers/conf/caldavd-test.plist	2006-12-22 19:06:59 UTC (rev 897)
+++ CalendarServer/branches/users/dreid/sudoers/conf/caldavd-test.plist	2006-12-22 19:26:19 UTC (rev 898)
@@ -184,7 +184,6 @@
     <string>/principals/user/admin</string>
   </array>
 
-
   <key>SudoersFile</key>
   <string>conf/sudoers.plist</string>
 </dict>

Modified: CalendarServer/branches/users/dreid/sudoers/twistedcaldav/directory/sudo.py
===================================================================
--- CalendarServer/branches/users/dreid/sudoers/twistedcaldav/directory/sudo.py	2006-12-22 19:06:59 UTC (rev 897)
+++ CalendarServer/branches/users/dreid/sudoers/twistedcaldav/directory/sudo.py	2006-12-22 19:26:19 UTC (rev 898)
@@ -59,9 +59,9 @@
             
         self.plistFile = plistFile
         self._fileInfo = None
-        self._readPlist()
+        self._accounts()
 
-    def _readPlist(self):
+    def _accounts(self):
         fileInfo = (self.plistFile.getmtime(), self.plistFile.getsize())
         if fileInfo != self._fileInfo:
             self._plist = readPlist(self.plistFile.path)
@@ -83,14 +83,14 @@
         if recordType != self.recordType:
             raise UnknownRecordTypeError(recordType)
 
-        for entry in self._plist['users']:
+        for entry in self._accounts()['users']:
             yield self._recordForEntry(entry)
 
     def recordWithShortName(self, recordType, shortName):
         if recordType != self.recordType:
             raise UnknownRecordTypeError(recordType)
 
-        for entry in self._plist['users']:
+        for entry in self._accounts()['users']:
             if entry['username'] == shortName:
                 return self._recordForEntry(entry)
 

Modified: CalendarServer/branches/users/dreid/sudoers/twistedcaldav/tap.py
===================================================================
--- CalendarServer/branches/users/dreid/sudoers/twistedcaldav/tap.py	2006-12-22 19:06:59 UTC (rev 897)
+++ CalendarServer/branches/users/dreid/sudoers/twistedcaldav/tap.py	2006-12-22 19:26:19 UTC (rev 898)
@@ -46,6 +46,9 @@
 from twistedcaldav.logging import RotatingFileAccessLoggingObserver
 from twistedcaldav.root import RootResource
 from twistedcaldav.directory.principal import DirectoryPrincipalProvisioningResource
+from twistedcaldav.directory.aggregate import AggregateDirectoryService
+from twistedcaldav.directory.sudo import SudoDirectoryService
+
 from twistedcaldav.static import CalendarHomeProvisioningFile
 from twistedcaldav.authkerb import NegotiateCredentialFactory
 
@@ -127,8 +130,15 @@
         # Setup the Directory
         #
         directoryClass = namedClass(config.DirectoryService['type'])
-        directory = directoryClass(**config.DirectoryService['params'])
+        baseDirectory = directoryClass(**config.DirectoryService['params'])
 
+        if config.SudoersFile:
+            sudoDirectory = SudoDirectoryService(config.SudoersFile)
+            sudoDirectory.realmName = baseDirectory.realmName
+        
+        directory = AggregateDirectoryService((baseDirectory,
+                                               sudoDirectory))
+
         #
         # Setup Resource hierarchy
         #

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20061222/222c01c2/attachment.html


More information about the calendarserver-changes mailing list