Closed Bug 228706 Opened 21 years ago Closed 21 years ago

bugzilla cookie expiration dates are invalid including login cookie

Categories

(Bugzilla :: Bugzilla-General, defect)

defect
Not set
major

Tracking

()

RESOLVED FIXED
Bugzilla 2.16

People

(Reporter: mfoster167, Assigned: justdave)

Details

(Whiteboard: [fixed in 2.16.5] [does not affect trunk])

Attachments

(1 file)

User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322) Build Identifier: I didn't see this filed previously. Bugzilla sets the login cookie to expire at invalid dates/times, also, IE doesn't seem to like the trick of a past expiration date as a way to generate a session/login cookie. Fixing these expire times seems to fix a lot of cookie login problems, will test the fix again with another bugzilla installation. expires=Sun, 30-Jun-2029 00:00:00 GMT [<-- note that 30 jun 2029 is a saturday] expires=Sun, 30-Jun-1980 00:00:00 GMT [<-- note that 30 jun 1980 is a monday] Changing the 1980 expire time which the login/session cookie uses to some valid date in the future fixes IE related login problems but it also may decrease bugzilla security (logins may never expire). Ideally, bugzilla should rely on a server side login timeout, not the client side. And yes my users and I are not going to different URLs/hosts each time which might cause this problem. June 2029 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 June 1980 Su Mo Tu We Th Fr Sa 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Reproducible: Always Steps to Reproduce: 1. 2. 3.
exactly what problem are you seeing? The 1980 is set when you LOG OUT, meaning it's trying to convince the browser to immediately delete the cookie. There is a server-side timeout, currently 30 days from your last access. You can change this in CGI.pl in 2.16.x and in Bugzilla/Auth/Cookie.pm in 2.17.x
The cgis are explicitly trying to convince the browser to logout by setting a expiration date in the past? Wouldn't it be easier to unset that cookie or prevent the server side from accepting that user's cookie further? I guess the cookie already equals NULL so the former may be difficult. I'm seeing users and myself constantly having to relogin after submitting a new bug or making changes to an existing bug.
there is no way to unset a cookie on the client. That's why you set an expiration date in the past. And yes, we invalidate it on the server at the same time. That's called trying to not leave a mess. :) See bug 220817 and see if the proposed docs there help you out any.
So you don't think the slightly invalid expiration dates matter?
Looking at the source now (2.17.6), it says "Tue, 15-Sep-1998 21:49:00 GMT" everyplace it's trying to expire a cookie. In 2.16.4 however, it's how you mentioned. And yes, that looks very wrong. Not only is it the wrong day of the week, it's using a 2-digit year. :) Is that 2080? Guess what. 30-June-2080 is a Sunday. :)
Status: UNCONFIRMED → NEW
Ever confirmed: true
Whiteboard: [wanted for 2.16.5] [does not affect trunk]
Target Milestone: --- → Bugzilla 2.16
Just for reference, the 15-Sep-1998 date happens to coincide with the exact time of the check-in of the Perl version of Bugzilla into CVS after it got ported from TCL. :) (which was also the first public release of Bugzilla, as version 2.0)
I changed it when I CGI.pm'd cookie handling. And yes, it is the beginning of bz-in-perl which I used for the date. I'd be really, really, really surprised if theinvalid dates broke anything. noone has reported that before...
Attached patch Patch v1Splinter Review
Attachment #139309 - Flags: review?(myk)
Comment on attachment 139309 [details] [diff] [review] Patch v1 Looks good, works as far as I can tell. r=myk
Attachment #139309 - Flags: review?(myk) → review+
Checking in CGI.pl; /cvsroot/mozilla/webtools/bugzilla/CGI.pl,v <-- CGI.pl new revision: 1.153.2.7; previous revision: 1.153.2.6 done Checking in buglist.cgi; /cvsroot/mozilla/webtools/bugzilla/buglist.cgi,v <-- buglist.cgi new revision: 1.169.2.12; previous revision: 1.169.2.11 done Checking in colchange.cgi; /cvsroot/mozilla/webtools/bugzilla/colchange.cgi,v <-- colchange.cgi new revision: 1.24.2.3; previous revision: 1.24.2.2 done Checking in createaccount.cgi; /cvsroot/mozilla/webtools/bugzilla/createaccount.cgi,v <-- createaccount.cgi new revision: 1.21.2.4; previous revision: 1.21.2.3 done Checking in post_bug.cgi; /cvsroot/mozilla/webtools/bugzilla/post_bug.cgi,v <-- post_bug.cgi new revision: 1.52.2.8; previous revision: 1.52.2.7 done Checking in query.cgi; /cvsroot/mozilla/webtools/bugzilla/query.cgi,v <-- query.cgi new revision: 1.98.2.2; previous revision: 1.98.2.1 done Checking in relogin.cgi; /cvsroot/mozilla/webtools/bugzilla/relogin.cgi,v <-- relogin.cgi new revision: 1.18.2.1; previous revision: 1.18 done
Status: NEW → RESOLVED
Closed: 21 years ago
Flags: approval+
OS: Windows 2000 → All
Hardware: PC → All
Resolution: --- → FIXED
Whiteboard: [wanted for 2.16.5] [does not affect trunk] → [fixed in 2.16.5] [does not affect trunk]
QA Contact: matty_is_a_geek → default-qa
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: