[Python-checkins] cpython: Fix Issue2193 - Allow ":" character in Cookie NAME values
senthil.kumaran
python-checkins at python.org
Sun Apr 22 03:20:01 CEST 2012
http://hg.python.org/cpython/rev/57ec2e6cd70a
changeset: 76457:57ec2e6cd70a
parent: 76454:0356103cde28
user: Senthil Kumaran <senthil at uthcode.com>
date: Sun Apr 22 09:19:04 2012 +0800
summary:
Fix Issue2193 - Allow ":" character in Cookie NAME values
files:
Lib/http/cookies.py | 2 +-
Lib/test/test_http_cookies.py | 9 +++++++++
Misc/NEWS | 2 ++
3 files changed, 12 insertions(+), 1 deletions(-)
diff --git a/Lib/http/cookies.py b/Lib/http/cookies.py
--- a/Lib/http/cookies.py
+++ b/Lib/http/cookies.py
@@ -159,7 +159,7 @@
# _LegalChars is the list of chars which don't require "'s
# _Translator hash-table for fast quoting
#
-_LegalChars = string.ascii_letters + string.digits + "!#$%&'*+-.^_`|~"
+_LegalChars = string.ascii_letters + string.digits + "!#$%&'*+-.^_`|~:"
_Translator = {
'\000' : '\\000', '\001' : '\\001', '\002' : '\\002',
'\003' : '\\003', '\004' : '\\004', '\005' : '\\005',
diff --git a/Lib/test/test_http_cookies.py b/Lib/test/test_http_cookies.py
--- a/Lib/test/test_http_cookies.py
+++ b/Lib/test/test_http_cookies.py
@@ -34,6 +34,15 @@
'dict': {'keebler' : 'E=mc2'},
'repr': "<SimpleCookie: keebler='E=mc2'>",
'output': 'Set-Cookie: keebler=E=mc2'},
+
+ # Cookies with ':' character in their name. Though not mentioned in
+ # RFC, servers / browsers allow it.
+
+ {'data': 'key:term=value:term',
+ 'dict': {'key:term' : 'value:term'},
+ 'repr': "<SimpleCookie: key:term='value:term'>",
+ 'output': 'Set-Cookie: key:term=value:term'},
+
]
for case in cases:
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -61,6 +61,8 @@
Library
-------
+- Issue #2193: Allow ":" character in Cookie NAME values.
+
- Issue #14629: tokenizer.detect_encoding will specify the filename in the
SyntaxError exception if found at readline.__self__.name.
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list