This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author florianpilz
Recipients florianpilz
Date 2013-12-03.07:23:00
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1386055381.8.0.960410220021.issue19869@psf.upfronthosting.co.za>
In-reply-to
Content
BaseCookie should give an informative error, if a non RFC compliant header was given. The problem was, that we thought several cookies are allowed in one header in a cookie *response* header. However, this is only allowed in cookie *request* headers.

In those cases the output of BaseCookie looks broken, which caused a lot of confusion, since a standard library should not have so many flaws.

Example with parsing a response header with several cookies separated by comma (not allowed by RFC):

http.cookies.BaseCookie('foo=bar, oof=rab; httponly, bar=baz').output()
'Set-Cookie: bar=baz\r\nSet-Cookie: foo=bar,\r\nSet-Cookie: oof=rab'

Flaws:

* comma after 'foo=bar' in output
* the httponly flag was omitted (it would show up with a semi-colon after it, i.e. 'oof=rab; httponly;')
* input and output style are different, i.e. several cookies in one line were transformed to several cookies in several lines

I think the best solution is to fail early and hard, if there are several cookies in one header. Maybe some problems should be fixed anyway (trailing comma, different output style).
History
Date User Action Args
2013-12-03 07:23:01florianpilzsetrecipients: + florianpilz
2013-12-03 07:23:01florianpilzsetmessageid: <1386055381.8.0.960410220021.issue19869@psf.upfronthosting.co.za>
2013-12-03 07:23:01florianpilzlinkissue19869 messages
2013-12-03 07:23:00florianpilzcreate