Index: trunk/kernel/include/emailmessage.php =================================================================== diff -u -r211 -r216 --- trunk/kernel/include/emailmessage.php (.../emailmessage.php) (revision 211) +++ trunk/kernel/include/emailmessage.php (.../emailmessage.php) (revision 216) @@ -665,25 +665,23 @@ else { $this->MessagesSent++; + /* ensure headers are using \r\n instead of \n */ + //$headers = str_replace("\r\n","\n",$headers); + //$headers = str_replace("\n","\r\n",$headers); - $headers = "Date: ".date("r")."\n".$headers; - $headers = "Return-Path: ".$objConfig->Get("Smtp_AdminMailFrom")."\n".$headers; + $headers = "Date: ".date("r")."\r\n".$headers; + $headers = "Return-Path: ".$objConfig->Get("Smtp_AdminMailFrom")."\r\n".$headers; //$Msg = str_replace("\r\n","\n",$Msg); - // $Msg = str_replace("\n","\r\n",$Msg); + //$Msg = str_replace("\n","\r\n",$Msg); //echo "
"; print_r(htmlentities($headers)); echo "
"; //echo "
"; print_r(htmlentities($Msg)); echo "
"; $ver = phpversion(); if(substr($Subject,0,9)=="Subject: ") $Subject = substr($Subject,9); - - /* ensure headers are using \r\n instead of \n */ - //$headers = str_replace("\r\n","\n",$headers); - //$headers = str_replace("\n","\r\n",$headers); - if(!strlen($objConfig->Get("Smtp_Server")) || !$this->AllowSockets()) { - return mail($To, trim($Subject), "\n", $headers.$Msg); + return mail($To,trim($Subject),$Msg, $headers); } $headers = "Subject: ".trim($Subject)."\r\n".$headers; @@ -807,35 +805,36 @@ $OB="----=_OuterBoundary_000"; $boundary = "-----=".md5( uniqid (rand())); $f = "\"$FromName\" <".$From.">"; - $headers = "From: $f\n"; - $headers .= "MIME-Version: 1.0\n"; + $headers = "From: $f\r\n"; + $headers .= "MIME-Version: 1.0\r\n"; if($HasFile) { //Messages start with text/html alternatives in OB $headers.="Content-Type: multipart/mixed;\n\tboundary=\"".$OB."\"\n\n"; - $msg.="--".$OB."\n"; - $msg.="Content-Type: multipart/alternative; boundary=\"$boundary\"\n\n"; + $msg ="This is a multi-part message in MIME format.\r\n"; + $msg.="\r\n--".$OB."\r\n"; + $msg.="Content-Type: multipart/alternative; boundary=\"".$boundary."\"\r\n\r\n"; } else - $headers .= "Content-Type: multipart/alternative; boundary=\"$boundary\"\n\n"; + $headers .= "Content-Type: multipart/alternative; boundary=\"$boundary\""; if(is_array($extra_headers)) { for($i=0;$i0) { - $msg .= "--" . $boundary . "\n"; - $msg .= "Content-Type: text/html; charset=\"iso-8859-1\"\n"; + $msg .= "--" . $boundary . "\r\n"; + $msg .= "Content-Type: text/html; charset=\"iso-8859-1\"\r\n"; $msg .= "Content-Transfer-Encoding: 8bit\r\n\r\n"; $msg .= stripslashes($Html); $msg .= "\r\n\r\n"; @@ -846,10 +845,10 @@ if(!strlen($FileLoc)) $FileLoc = $FileName; $FileName = basename($FileName); - $msg .= "--".$OB."\n"; - $msg.="Content-Type: application/octetstream;\n\tname=\"".$FileName."\"\n"; + $msg .= "\r\n--".$OB."\r\n"; + $msg.="Content-Type: application/octetstream;\n\tname=\"".$FileName."\"\r\n"; $msg.="Content-Transfer-Encoding: base64\n"; - $msg.="Content-Disposition: attachment;\n\tfilename=\"".$FileName."\"\n\n"; + $msg.="Content-Disposition: attachment;\n\tfilename=\"".$FileName."\"\r\n\r\n"; //file goes here $fd=fopen ($FileLoc, "r"); @@ -860,7 +859,7 @@ } $FileContent=chunk_split(base64_encode($FileContent)); $msg.=$FileContent; - $msg .= "\n--".$OB."\r\n"; + $msg .= "\r\n--".$OB."\r\n"; } if(strlen($ToName)>0)