Home

Weblog Attitude Diffusion Details

 


Weblog Attitude Diffusion 1.0


Category:  Robot
Description:

From the developer, Los Alamos National Laboratory:
This robot is part of a research project into how weblogs both reflect and influence the spread of attitudes around the globe.

Link: None
Link:

http://www.lanl.gov/



Search Database | Homepage

 
#!/usr/bin/perl ######################################################################## # Advance Logger (c) Perlonline.com 2001=2004 # # author : Farid S. Kapasi (farid@perlonline.com) # # # # UNAUTHORISED USE OF THIS SCRIPT IS STRICTLY PROHIBITED # ######################################################################## #IMPORTANT FOR WINDOWS SERVERS #Remove the # before chdir and enter the path to Advlogger here. #All \ in the path should be written as \\. #chdir "/cgi-bin/advlogger"; #Manual Setup (Make all changes in config.cgi) require "config.cgi"; require "subs.cgi"; $maxsize = $maxsize * 1024 * 1024;$ip = $ENV{'REMOTE_ADDR'};$browser = $ENV{'HTTP_USER_AGENT'};$referer = $ENV{'HTTP_REFERER'};$doc = $ENV{$ssienv};@digits = split (/\./, $ip);$address = pack ("C4", @digits);$host = gethostbyaddr ($address, 2);@pairs = split(/&/, $ENV{"QUERY_STRING"});foreach $pair (@pairs) {($q_name, $q_value) = split(/=/, $pair);$q_value =~ tr/+/ /;$q_value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;chomp($q_value);$QUERY{$q_name} = $q_value;}@pairs=split(/; /, $ENV{'HTTP_COOKIE'});foreach $pair (@pairs) {($q_name, $q_value) = split(/=/, $pair);$QUERY{$q_name} = $q_value;}if ($QUERY{'ref'} ne "" or $QUERY{'doc'} ne "") {$doc = $QUERY{'doc'};$referer = $QUERY{'ref'};if ($QUERY{'res'} ne "") {$browser .= " res=$QUERY{'res'}";}$id = $QUERY{'loggerid'};$session = $QUERY{'loggersession'};if ($QUERY{'loggersessionlogged'} ne 'yes') {$session = $session + 1;print "Set-Cookie: loggersession=$session; expires=Friday, 31-Dec-2010 00:00:00 GMT; path=/;\n";if ($QUERY{'loggerid'} eq "") {$id = seed(10);print "Set-Cookie: loggerid=$id; expires=Friday, 31-Dec-2010 00:00:00 GMT; path=/;\n";}print "Set-Cookie: loggersessionlogged=yes; path=/;\n";}print "Content-type: image/gif\n\nGIF89a\1\0\1\0\200\0\0\0\0\0\0\0\0!\371\4\1\0\0\0\0,\0\0\0\0\1\0\1\0\0\2\2D\1\0\n";}$ignore = 0;foreach $myip (@ignoreip){if ($ip eq $myip) {$ignore = 1;last;}}if ($ignore == 0) {$rawtime = time;if ($removewww == 1) {$doc =~ s/\/www\./\//;}$size = (-s "$datadir/$logfile");if ($size > $maxsize) {require "append.cgi";}else{unless (-e "$datadir/$logfile") {open (CREATE, ">$datadir/$logfile");close CREATE;chmod(0777, "$datadir/$logfile");}open(FILE,"+<$datadir/$logfile") or die "Unable to open $datadir/$logfile";seek(FILE, 0,2);print FILE "$ip|$rawtime|$host|$browser|$doc|$referer|$error|$id|$session\n" or die "Unable to write to file $datadir/$logfile";close (FILE);}}print "Content-type: text/html\n\n";print "";sub seed{my $nos = $_[0];my $pass = "";my @c = split(/ */,"1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ");my $i = 0;my $max = @c;for($i=1;$i<=$nos;$i +=1) {$pass = $pass.$c[int(rand($max))];}return $pass;}