[linux] SMTP conversatie in Perl

Hugo van der Kooij hvdkooij op vanderkooij.org
Za Jan 12 14:23:07 CET 2008


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hoi,

Om wat monitoring te doen van SMTP servers heb ik wat bedacht waarvoor
ik SMTP moet gaan 'praten' in perl.

Normaal kan ik een bericht opmaken en aan sendmail geven of zo maar in
dit geval wil ik de diverse stappen testen qua snelheid en kan sendmail
mij niet helpen omdat ik eigenlijk ook de ontvanger ben van het bericht.
Ik ga een bericht aan een SMTP server sturen en aan het eind van de SMTP
ketting dient dat weer op dezelfde server terug te komen.

Klopt mijn aanname dat ik iets dergelijks kan doen:

	use IO::Socket;
	my $sock = new IO::Socket::INET (
		PeerAddr => 'remoteserver',
		PeerPort => '25',
		Proto => 'tcp',
	);
	die "Error: $!\n" unless $sock;

	$answer=<$sock>;
	print $answer;

	print $sock "HELO ikke\n";
	$answer=<$sock>;
	print $answer;

	print $sock "MAIL FROM: <ikke>\n";
	$answer=<$sock>;	
	print $answer;

	print $sock "RCPT TO: <loopback op receiver>\n";
	$answer=<$sock>;
	print $answer;

	close($sock);

of maak ik hier een kapitale denkfout? Het werkt namelijk niet echt maar
spuugt op de 2e, 3e en 4e aanroep van:
	print $answer;

Hugo.

- --
hvdkooij op vanderkooij.org               http://hugo.vanderkooij.org/
PGP/GPG? Use: http://hugo.vanderkooij.org/0x58F19981.asc

	A: Yes.
	>Q: Are you sure?
	>>A: Because it reverses the logical flow of conversation.
	>>>Q: Why is top posting frowned upon?

Bored? Click on http://spamornot.org/ and rate those images.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)

iD8DBQFHiL84BvzDRVjxmYERAo92AJ0ZUvPiTLYYrpnvyfWIBoTIXdbMlwCfRmnA
lEP73dJcba3C/yIp+dB8OOs=
=sAcZ
-----END PGP SIGNATURE-----



More information about the Linux mailing list