$SIG{PIPE} = sub { die "Your pipe handler here! $!"; }; $prog = "/var/qmail/bin/qmail-remote"; $msg = "this is the email message"; open (OUT, "|$prog") or die "Couldn't open Qmail: $!; stopped"; print OUT $msg; close(OUT) or die "Couldn't close Qmail: $! $?; stopped"; my $return_code = $? >> 8; print STDOUT "My return code was $return_code.\n";