sub check_email { my $dns=Net::DNS::Resolver->new(); my $mehladdr = shift; my ($user,$host) = split('@',$mehladdr); ## Wenn die Syntax noch nicht getestet wurde... ############################## if ( $mehladdr =~ / / || $mehladdr =~ /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/ || $mehladdr !~ /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/) { return 4; } else { if($dns->query($host,'MX') or $dns->query($host,'A')) { my $smtp = Net::SMTP->new($host); $smtp->mail(''); if ( !$smtp->to($mehladdr) ) { return 1; } $smtp->reset; $smtp->quit; return 0; } return 4; } }