We're living in 2004 now... perl is your friend for these kinds of things :)
[squirrelmail.git] / class / deliver / Deliver_SendMail.class.php
index f83c0cdd0552c7619bd5ba58fba3b17ddd0fdc29..44095a613cd6dcf11081869d56a107d6ba77fc0f 100644 (file)
@@ -2,16 +2,22 @@
 /**
  * Deliver_SendMail.class.php
  *
- * Copyright (c) 1999-2002 The SquirrelMail Project Team
+ * Copyright (c) 1999-2004 The SquirrelMail Project Team
  * Licensed under the GNU GPL. For full terms see the file COPYING.
  *
  * Delivery backend for the Deliver class.
  *
  * $Id$
+ * @package squirrelmail
  */
 
+/** This of course depends upon Deliver */
 require_once(SM_PATH . 'class/deliver/Deliver.class.php');
 
+/**
+ * Delivers messages using the sendmail binary
+ * @package squirrelmail
+ */
 class Deliver_SendMail extends Deliver {
 
     function preWriteToStream(&$s) {
@@ -23,7 +29,8 @@ class Deliver_SendMail extends Deliver {
     function initStream($message, $sendmail_path) {
         $rfc822_header = $message->rfc822_header;
        $from = $rfc822_header->from[0];
-       $envelopefrom = $from->mailbox.'@'.$from->host;
+       $envelopefrom = trim($from->mailbox.'@'.$from->host);
+       $envelopefrom = str_replace(array("\0","\n"),array('',''),$envelopefrom);
        if (strstr($sendmail_path, "qmail-inject")) {
            $stream = popen (escapeshellcmd("$sendmail_path -i -f$envelopefrom"), "w");
        } else {