From: ajt <> Date: Thu, 6 Oct 2005 10:11:50 +0000 (-0800) Subject: [project @ 2005-10-06 03:11:50 by ajt] X-Git-Tag: release/2.6.0~648 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=d319d48d77eeda90f5f8c4db07a93808d2ed3c5f;p=debbugs.git [project @ 2005-10-06 03:11:50 by ajt] make cookies.cgi work properly, and reveal old cookies --- diff --git a/cgi/cookies.cgi b/cgi/cookies.cgi index 370b0bc..1251e92 100644 --- a/cgi/cookies.cgi +++ b/cgi/cookies.cgi @@ -4,9 +4,12 @@ use strict; use POSIX qw(strftime); require './common.pl'; -$ENV{"HTTP_COOKIES"} = ""; +my $oldcookies = $ENV{"HTTP_COOKIE"}; +$ENV{"HTTP_COOKIE"} = ""; my %param = readparse(); +my %oldcookies = map { ($1, $2) if (m/(.*)=(.*)/) } split /[;&]/, $oldcookies; + my $clear = (defined $param{"clear"} && $param{"clear"} eq "yes"); my @time_now = gmtime(time()); my $time_future = strftime("%a, %d-%b-%Y %T GMT", @@ -28,13 +31,15 @@ for my $c (@cookie_options) { } } print "\n"; +print "

Oldcookies $oldcookies .\n"; print "

Cookies set!\n"; for my $c (@cookie_options) { + my $old = $oldcookies{$c} || "unset"; if (defined $param{$c}) { - printf "
Set %s=%s\n", $c, $param{$c}; + printf "
Set %s=%s (was %s)\n", $c, $param{$c}, $old; } elsif ($clear) { - printf "
Cleared %s\n", $c; + printf "
Cleared %s (was %s)\n", $c, $old; } else { - printf "
Didn't touch %s (use clear=yes to clear)\n", $c; + printf "
Didn't touch %s (was %s; use clear=yes to clear)\n", $c, $old; } }