mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-29 06:38:52 +00:00
This should fix bug #500134 and adds some additional error checking on smtp email sends...
git-svn-id: file:///svn/phpbb/trunk@2008 89ea8834-ac86-4346-8a33-228a782c2dd0
This commit is contained in:
parent
9819d4f777
commit
8b836794be
1 changed files with 27 additions and 6 deletions
|
@ -149,22 +149,43 @@ function smtpmail($mail_to, $subject, $message, $headers = "")
|
||||||
@reset( $mail_to_array );
|
@reset( $mail_to_array );
|
||||||
while( list( , $mail_to_address ) = each( $mail_to_array ))
|
while( list( , $mail_to_address ) = each( $mail_to_array ))
|
||||||
{
|
{
|
||||||
fputs( $socket, "RCPT TO: $mail_to_address\r\n" );
|
//
|
||||||
server_parse( $socket, "250" );
|
// Add an additional bit of error checking to the To field.
|
||||||
|
//
|
||||||
|
$mail_to_address = trim($mail_to_address);
|
||||||
|
if ( preg_match('/.+\@.+/', $mail_to_address) )
|
||||||
|
{
|
||||||
|
fputs( $socket, "RCPT TO: $mail_to_address\r\n" );
|
||||||
|
server_parse( $socket, "250" );
|
||||||
|
}
|
||||||
$to_header .= "<$mail_to_address>, ";
|
$to_header .= "<$mail_to_address>, ";
|
||||||
}
|
}
|
||||||
// Ok now do the CC and BCC fields...
|
// Ok now do the CC and BCC fields...
|
||||||
@reset( $bcc );
|
@reset( $bcc );
|
||||||
while( list( , $bcc_address ) = each( $bcc ))
|
while( list( , $bcc_address ) = each( $bcc ))
|
||||||
{
|
{
|
||||||
fputs( $socket, "RCPT TO: $bcc_address\r\n" );
|
//
|
||||||
server_parse( $socket, "250" );
|
// Add an additional bit of error checking to bcc header...
|
||||||
|
//
|
||||||
|
$bcc_address = trim( $bcc_address );
|
||||||
|
if ( preg_match('/.+\@.+/', $bcc_address) )
|
||||||
|
{
|
||||||
|
fputs( $socket, "RCPT TO: $bcc_address\r\n" );
|
||||||
|
server_parse( $socket, "250" );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@reset( $cc );
|
@reset( $cc );
|
||||||
while( list( , $cc_address ) = each( $cc ))
|
while( list( , $cc_address ) = each( $cc ))
|
||||||
{
|
{
|
||||||
fputs($socket, "RCPT TO: $cc_address\r\n");
|
//
|
||||||
server_parse($socket, "250");
|
// Add an additional bit of error checking to cc header
|
||||||
|
//
|
||||||
|
$cc_address = trim( $cc_address );
|
||||||
|
if ( preg_match('/.+\@.+/', $cc_address) )
|
||||||
|
{
|
||||||
|
fputs($socket, "RCPT TO: $cc_address\r\n");
|
||||||
|
server_parse($socket, "250");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Ok now we tell the server we are ready to start sending data
|
// Ok now we tell the server we are ready to start sending data
|
||||||
fputs($socket, "DATA\r\n");
|
fputs($socket, "DATA\r\n");
|
||||||
|
|
Loading…
Add table
Reference in a new issue