#!/usr/bin/perl -wT
use strict;
use diagnostics;
use CGI::Debug;
use CGI;

$ENV{'PATH'} = "/usr/sbin:/usr/bin";

print "Content-type: text/html\n\n";

my $to = CGI::param('to');
my $from = CGI::param('from');

$to =~ m/               # kontrollerar innehållet i $to med denna regexp
         ^              # Matchar början av strängen
	 (              # Påbörja teckengrupp 1. $1 sätts till dess innehåll
	  [             # Påbörja teckenklass
	   \w           # matchar a-z, A-Z, 0-9 och _
	   \.           # matchar '.'
	   \-           # matchar '-'
	   ]+           # Kvantifikatorn matchar en eller flera tecken från 
                        # teckengruppen. Dvs a-z,A-Z,0-9, punkt eller minustecken.
			# Detta matchar delen innan @ i mailadressen
	  \@            # matchar '@'
	  [\w\.\-]+     # matchar en eller flera av samma sort som ovan
	  \.            # matchar '.'
	  \w{2,3}       # matchar två eller tre av teckenklassen \w
	  )             # Avslutar teckengrupp 1. Allt inom gruppen läggs i $1
	 $              # Matchar slutet av strängen
	 /x             # Flaggan 'x' möjliggör dessa kommentarer
    or exit;            # hoppar ur porgrammet om ingen match hittades

my $clean_to = $1;

$from =~ m/^([\w\.\-]+\@[\w\.\-]+\.\w{2,3})$/ or exit;
my $clean_from = $1;


print "<h1>Mailar</h1>\n";

exit unless $clean_to and $clean_from;

#Ange absolut path för vilken sendmail vi vill använda
open(MAIL, "| /usr/sbin/sendmail -f $clean_from $clean_to") or die;

print MAIL "To: $clean_to\n";
print MAIL "From: $clean_from\n";
print MAIL "Subject: Hej\n\n";

print MAIL "Hejdå\n";

close MAIL;

print "<p>Klart!\n";
