[CalendarServer-changes] [4000] CalendarServer/branches/exarkun/update-twisted-3816/lib-patches/ Twisted/twisted.web2.auth.digest.patch
source_changes at macosforge.org
source_changes at macosforge.org
Mon Apr 13 08:50:15 PDT 2009
Revision: 4000
http://trac.macosforge.org/projects/calendarserver/changeset/4000
Author: exarkun at twistedmatrix.com
Date: 2009-04-13 08:50:14 -0700 (Mon, 13 Apr 2009)
Log Message:
-----------
applied to Twisted dav-take-two branch
Removed Paths:
-------------
CalendarServer/branches/exarkun/update-twisted-3816/lib-patches/Twisted/twisted.web2.auth.digest.patch
Deleted: CalendarServer/branches/exarkun/update-twisted-3816/lib-patches/Twisted/twisted.web2.auth.digest.patch
===================================================================
--- CalendarServer/branches/exarkun/update-twisted-3816/lib-patches/Twisted/twisted.web2.auth.digest.patch 2009-04-13 15:44:40 UTC (rev 3999)
+++ CalendarServer/branches/exarkun/update-twisted-3816/lib-patches/Twisted/twisted.web2.auth.digest.patch 2009-04-13 15:50:14 UTC (rev 4000)
@@ -1,45 +0,0 @@
-Index: twisted/web2/auth/digest.py
-===================================================================
---- twisted/web2/auth/digest.py (revision 26342)
-+++ twisted/web2/auth/digest.py (working copy)
-@@ -11,6 +11,10 @@
- from twisted.internet.defer import succeed
-
- from twisted.web2.auth.interfaces import ICredentialFactory
-+from twisted.web2.http_headers import tokenize
-+from twisted.web2.http_headers import Token
-+from twisted.web2.http_headers import split
-+from twisted.web2.http_headers import parseKeyValue
- from twisted.python.hashlib import md5, sha1
-
- # The digest math
-@@ -317,18 +323,18 @@
- @raise: L{error.LoginFailed} if the response does not contain a
- username, a nonce, an opaque, or if the opaque is invalid.
- """
-- def unq(s):
-- if s[0] == s[-1] == '"':
-- return s[1:-1]
-- return s
- response = ' '.join(response.splitlines())
-- parts = response.split(',')
--
-- auth = {}
--
-- for (k, v) in [p.split('=', 1) for p in parts]:
-- auth[k.strip()] = unq(v.strip())
--
-+
-+ try:
-+ parts = split(tokenize((response,), foldCase=False), Token(","))
-+
-+ auth = {}
-+
-+ for (k, v) in [parseKeyValue(p) for p in parts]:
-+ auth[k.strip()] = v.strip()
-+ except ValueError:
-+ raise error.LoginFailed('Invalid response.')
-+
- username = auth.get('username')
- if not username:
- raise error.LoginFailed('Invalid response, no username given.')
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20090413/4ad6a771/attachment.html>
More information about the calendarserver-changes
mailing list