#PWS notifier/logger # Report.pm # C. Prichard # 2-2-01 package Report; $ReportPackage = "PWS::Report"; $ReportPackage::Version = "000514"; $::Report = $ReportPackage; sub new(){ my $class = shift; bless $self{}; $self->init(); $self; } sub init(){ use Lady::Lady_DATE; $self{'TIME'} = new Lady_DATE; $LADY_TABLE{'_time'} = $self{'TIME'}->lady_time; $self{'smtp'} = "mail.somewhere.net"; $self{'admin_email'} = 'myname@mail.somewhere.net'; $self{'smtp_username'} = 'user'; $self{'header'} = " $ENV{'REMOTE_ADDR'}"; $self{'message'} = "$LADY_TABLE{'_time'}\n\nRemote ADDR:$ENV{'REMOTE_ADDR'}\n\nRemote HOST:$ENV{'REMOTE_HOST'}\n\nHTTP_REFERER:$ENV{'HTTP_REFERER'}\n\nUSER AGENT:$ENV{'HTTP_USER_AGENT'}\n\nBYE.\n\n-PWS\n"; return; } sub report(){ my $class = shift; use Net::SMTP; $smtp = Net::SMTP->new( $self{'smtp'}, Hello => $self{'smtp'}, Timeout => 30, Debug => 1); # print "DOMAIN:".$smtp->domain."
\n"; $smtp->quit; $smtp = Net::SMTP->new($self{'smtp'}); $smtp->mail($ENV{USER}); $smtp->to($self{'admin_email'}); $smtp->data(); $smtp->datasend("To: $self{'smtp_username'}\n"); $smtp->datasend("From: PWS \n"); $smtp->datasend("Subject: PWS accessed from:$self{'header'}\n"); $smtp->datasend("START::\n"); $smtp->datasend("\n\nHello:\n\n"); $smtp->datasend("$self{'message'}\n"); # $smtp->datasend("::END\n"); $smtp->dataend(); $smtp->quit; return; } 1;