HELO hostname
####
#!/usr/bin/perl
use IO::Socket;
$socket=IO::Socket::INET->new(PeerAddr => "mail.your.net",
PeerPort => "25",
Proto => "tcp"
) or die "MAIL: $!";
print $socket "HELO your_hostname\r\n";
print $socket "MAIL FROM: \r\n";
print $socket "RCPT TO: \r\n";
print $socket "DATA\r\n";
print $socket "From: \r\n";
print $socket "To: \r\n";
print $socket "Subject: My automatic message\r\n";
print $socket "\r\n";
print $socket "Your data here\r\n";
print $socket ".", "\r\n";
print $socket "QUIT", "\r\n";
####
#!/usr/bin/perl
use IO::Socket;
$socket=IO::Socket::INET->new(PeerAddr => "mail.your.net",
PeerPort => "25",
Proto => "tcp"
) or die "MAIL: $!";
my $line = 'No line';
die "Error in greeting: $line"
unless ($line = scalar <$socket>) =~ /^2/;
print $socket "HELO your_hostname\r\n";
die "Error in HELO: $line"
unless ($line = scalar <$socket>) =~ /^2/;
print $socket "MAIL FROM: \r\n";
die "Error in MAIL FROM: $line"
unless ($line = scalar <$socket>) =~ /^2/;
print $socket "RCPT TO: \r\n";
die "Error in RCPT TO: $line"
unless ($line = scalar <$socket>) =~ /^2/;
print $socket "DATA\r\n";
die "Error in DATA: $line"
unless ($line = scalar <$socket>) =~ /^3/;
print $socket "From: \r\n";
print $socket "To: \r\n";
print $socket "Subject: My automatic message\r\n";
print $socket "\r\n";
print $socket "Your data here\r\n";
print $socket ".", "\r\n";
die "Error in DOT: $line"
unless ($line = scalar <$socket>) =~ /^2/;
print $socket "QUIT", "\r\n";
die "Error in QUIT: $line"
unless ($line = scalar <$socket>) =~ /^2/;