I used your code to set ( i just added use strict and warnings) and mine to read and it worked fine
#!/usr/local/bin/perl -w
#
# this is a file i named set.cgi
#
#
use strict;
use CGI;
my $q = new CGI;
my $cookie_out = $q->cookie(-name=>"wolves",
-value=>"cookieinfo",
-expires=>'+24h');
print $q->header(-cookie=>$cookie_out);
my $cookie_in = $q->cookie("wolves");
print $cookie_in;
#!/usr/local/bin/perl -w
#
# this is my code, i named it read.cgi
#
#
use CGI;
use strict;
print "Content-type:text/html\n\n";
my $q = new CGI;
my $cookie_in = $q->cookie('wolves');
print $cookie_in;
both pages displayed the word "cookieinfo", do you get something different?
-Robert