#!/usr/bin/perl
$connect_failed=0;
print"Content-type: text/html\n\n
";
if ($ENV{'QUERY_STRING'}eq"action=connect"){
print "";
}
if ($ENV{'QUERY_STRING'}eq"action=connecting"){
if(-e "/var/run/ppp0.pid"){
print "";
}
else {
if (`ps -A | grep chat` eq ""){
$connect_failed=1;
}
else{
print "";
}
}
}
print "
Paul's firewall
";
if ($ENV{'QUERY_STRING'}eq"action=connect"){
print"Connecting!
";
exec("/usr/sbin/ppp-on 1>> /var/log/pppd.log 2>> /var/log/pppd.log");
}
if ($ENV{'QUERY_STRING'}eq"action=connecting"){
$connect_failed || print "Still connecting
";
$connect_failed && print "Connect Failed. Sorry.
";
}
if ((stat("/var/run/ppp0.pid"))[7]){
$dialtime=(stat("/var/run/ppp0.pid"))[9];
$dialtime=time-$dialtime;
$hours=int($dialtime/3600);
$mins=int($dialtime/60-(60*$hours));
$secs=int($dialtime-((($hours*60)+$mins)*60));
print"Connected $hours:$mins:$secs
";
}
else {
print "Not Connected
";
}
open $file,"/var/log/pppd.log";
read $file,$lines,1024;
print "".$lines."
";