From d319d48d77eeda90f5f8c4db07a93808d2ed3c5f Mon Sep 17 00:00:00 2001 From: ajt <> Date: Thu, 6 Oct 2005 02:11:50 -0800 Subject: [PATCH] [project @ 2005-10-06 03:11:50 by ajt] make cookies.cgi work properly, and reveal old cookies --- cgi/cookies.cgi | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) 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; } } -- 2.39.2