durusmail: quixote-users: dumb cookie questions
dumb cookie questions
2002-06-25
dumb cookie questions
Quinn Dunkan
2002-06-25
OK, this isn't strictly speaking a quixote question, but I have this same
problem with quixote's session management, so it's tangentially related.

I read RFC 2109 and thought I understood it, but either I'm missing something
really dumb or the implementations of the browsers I'm using only vaguely
resemble 2109.

My first question is: does Max-Age work?  So far I have been unable to find
a browser in which it does.


Netscape is 4.7, Mozilla is 1.0, and IE is 6.lots of numbers.

Using max-age, e.g. 'Set-Cookie: tcookie=blah; max-age=5':

Mozilla accepts the cookie (includes it in subsequent requests), but never
expires the cookie unless I explicitly cancel it by sending max-age=0.

Netscape accepts the cookie, but ignores max-age entirely: no expiration
is possible at all.

IE accepts the cookie, but is like Netscape 4: it won't expire it.

Using expires, e.g.
    'Set-Cookie: tcookie=blah; expires=Tue, 25-Jun-2002 19:01:09 GMT':

IE doesn't even accept the cookie.

Mozilla accepts, but never expires the cookie unless I explicitly cancel it by
sending an expires=some time in the past.

Netscape works as expected (accepts cookie, expires at indicated time).



Second question is: what's the deal with quotes in values?  The RFC gives
an example cookie as
'Set-Cookie: Customer="WILE_E_COYOTE"; Version="1"; Path="/acme", but under
Mozilla at least, it *includes* the quotes in the path, and hence never sends
the cookie back unless you have some funny looking paths.  This explicitly
violates the RFC, based on my reading:

    value           =       word
    word            =       token | quoted-string

From all the trumpeting about "standards compliance" for Mozilla, I sort of
expected that at it at least would behave according to expectation, but
apparently not.  Maybe my expectations need adjusting...



reply