[CalendarServer-changes] [4876] CalendarServer/trunk/twistedcaldav/extensions.py

source_changes at macosforge.org source_changes at macosforge.org
Thu Dec 17 11:46:59 PST 2009


Revision: 4876
          http://trac.macosforge.org/projects/calendarserver/changeset/4876
Author:   cdaboo at apple.com
Date:     2009-12-17 11:46:55 -0800 (Thu, 17 Dec 2009)
Log Message:
-----------
Make sure we handle LoginFailed from .decode properly.

Modified Paths:
--------------
    CalendarServer/trunk/twistedcaldav/extensions.py

Modified: CalendarServer/trunk/twistedcaldav/extensions.py
===================================================================
--- CalendarServer/trunk/twistedcaldav/extensions.py	2009-12-17 18:40:43 UTC (rev 4875)
+++ CalendarServer/trunk/twistedcaldav/extensions.py	2009-12-17 19:46:55 UTC (rev 4876)
@@ -36,7 +36,7 @@
 
 from twisted.internet.defer import succeed, DeferredList, inlineCallbacks, returnValue
 from twisted.internet.defer import maybeDeferred
-from twisted.cred.error import UnauthorizedLogin
+from twisted.cred.error import LoginFailed, UnauthorizedLogin
 from twisted.web2 import responsecode
 from twisted.web2.auth.wrapper import UnauthorizedResponse
 from twisted.web2.http import HTTPError, Response, RedirectResponse
@@ -142,7 +142,11 @@
             else:
                 factory = request.credentialFactories[authHeader[0]]
 
-                creds = (yield factory.decode(authHeader[1], request))
+                try:
+                    creds = (yield factory.decode(authHeader[1], request))
+                except (UnauthorizedLogin, LoginFailed,):
+                    raise HTTPError((yield UnauthorizedResponse.makeResponse(
+                                request.credentialFactories, request.remoteAddr)))
 
                 # Try to match principals in each principal collection on the resource
                 authnPrincipal, authzPrincipal = (yield self.principalsForAuthID(request, creds))
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20091217/d21faba5/attachment-0001.html>


More information about the calendarserver-changes mailing list