[CalendarServer-changes] [2046]
CalendarServer/trunk/twistedcaldav/directory
source_changes at macosforge.org
source_changes at macosforge.org
Thu Dec 6 12:56:44 PST 2007
Revision: 2046
http://trac.macosforge.org/projects/calendarserver/changeset/2046
Author: dreid at apple.com
Date: 2007-12-06 12:56:30 -0800 (Thu, 06 Dec 2007)
Log Message:
-----------
disable calendaring for sudoers
Modified Paths:
--------------
CalendarServer/trunk/twistedcaldav/directory/sudo.py
CalendarServer/trunk/twistedcaldav/directory/test/test_sudo.py
Modified: CalendarServer/trunk/twistedcaldav/directory/sudo.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/sudo.py 2007-12-06 01:15:48 UTC (rev 2045)
+++ CalendarServer/trunk/twistedcaldav/directory/sudo.py 2007-12-06 20:56:30 UTC (rev 2046)
@@ -27,13 +27,13 @@
from twisted.python.filepath import FilePath
-from twisted.cred.credentials import (IUsernamePassword,
+from twisted.cred.credentials import (IUsernamePassword,
IUsernameHashedPassword)
from twisted.cred.error import UnauthorizedLogin
from twistedcaldav.py.plistlib import readPlist
-from twistedcaldav.directory.directory import (DirectoryService,
+from twistedcaldav.directory.directory import (DirectoryService,
DirectoryRecord,
UnknownRecordTypeError)
@@ -58,7 +58,7 @@
if isinstance(plistFile, (unicode, str)):
plistFile = FilePath(plistFile)
-
+
self.plistFile = plistFile
self._fileInfo = None
self._accounts()
@@ -104,12 +104,12 @@
# implementation because you shouldn't have a principal object for a
# disabled directory principal.
sudouser = self.recordWithShortName(
- SudoDirectoryService.recordType_sudoers,
+ SudoDirectoryService.recordType_sudoers,
credentials.credentials.username)
if sudouser is None:
raise UnauthorizedLogin("No such user: %s" % (sudouser,))
-
+
if sudouser.verifyCredentials(credentials.credentials):
return (
credentials.authnPrincipal.principalURL(),
@@ -117,7 +117,7 @@
)
else:
raise UnauthorizedLogin(
- "Incorrect credentials for %s" % (sudouser,))
+ "Incorrect credentials for %s" % (sudouser,))
class SudoDirectoryRecord(DirectoryRecord):
@@ -133,7 +133,8 @@
shortName=shortName,
fullName=shortName,
calendarUserAddresses=set(),
- autoSchedule=False)
+ autoSchedule=False,
+ enabledForCalendaring=False)
self.password = entry['password']
@@ -142,5 +143,5 @@
return credentials.checkPassword(self.password)
elif IUsernameHashedPassword.providedBy(credentials):
return credentials.checkPassword(self.password)
-
+
return super(SudoDirectoryRecord, self).verifyCredentials(credentials)
Modified: CalendarServer/trunk/twistedcaldav/directory/test/test_sudo.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/directory/test/test_sudo.py 2007-12-06 01:15:48 UTC (rev 2045)
+++ CalendarServer/trunk/twistedcaldav/directory/test/test_sudo.py 2007-12-06 20:56:30 UTC (rev 2046)
@@ -84,3 +84,11 @@
record = service.recordWithShortName(self.recordType, 'bob')
self.assertEquals(record.password, 'bob')
+
+ def test_calendaringDisabled(self):
+ service = self.service()
+
+ record = service.recordWithShortName(self.recordType, 'alice')
+
+ self.failIf(record.enabledForCalendaring,
+ "sudoers should have enabledForCalendaring=False")
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20071206/d387926f/attachment-0001.html
More information about the calendarserver-changes
mailing list