mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
cookie parser: do not fail on cookie with empty value
https://fedorahosted.org/freeipa/ticket/5709 Reviewed-By: Martin Basti <mbasti@redhat.com>
This commit is contained in:
parent
dd38602fa5
commit
25c53ba3fe
@ -272,8 +272,9 @@ class Cookie(object):
|
||||
if match:
|
||||
key = match.group(1)
|
||||
value = match.group(2)
|
||||
|
||||
# Double quoted value?
|
||||
if value[0] == '"':
|
||||
if value and value[0] == '"':
|
||||
if value[-1] == '"':
|
||||
value = value[1:-1]
|
||||
else:
|
||||
|
@ -50,6 +50,22 @@ class TestParse(unittest.TestCase):
|
||||
with self.assertRaises(ValueError):
|
||||
cookies = Cookie.parse(s)
|
||||
|
||||
# 1 cookie with empty value
|
||||
s = 'color='
|
||||
cookies = Cookie.parse(s)
|
||||
self.assertEqual(len(cookies), 1)
|
||||
cookie = cookies[0]
|
||||
self.assertEqual(cookie.key, 'color')
|
||||
self.assertEqual(cookie.value, '')
|
||||
self.assertEqual(cookie.domain, None)
|
||||
self.assertEqual(cookie.path, None)
|
||||
self.assertEqual(cookie.max_age, None)
|
||||
self.assertEqual(cookie.expires, None)
|
||||
self.assertEqual(cookie.secure, None)
|
||||
self.assertEqual(cookie.httponly, None)
|
||||
self.assertEqual(str(cookie), "color=")
|
||||
self.assertEqual(cookie.http_cookie(), "color=;")
|
||||
|
||||
# 1 cookie with name/value
|
||||
s = 'color=blue'
|
||||
cookies = Cookie.parse(s)
|
||||
|
Loading…
Reference in New Issue
Block a user