From 0b85d6b3bb0236a6567ebc8f42b643d5486070ef Mon Sep 17 00:00:00 2001 From: Michael Granados Date: Sun, 9 Nov 2014 02:43:48 -0200 Subject: Verifying From header before send mail Signed-off-by: Michael Granados --- system/language/english/email_lang.php | 1 + system/libraries/Email.php | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/system/language/english/email_lang.php b/system/language/english/email_lang.php index fdd823bc8..d63e700fe 100644 --- a/system/language/english/email_lang.php +++ b/system/language/english/email_lang.php @@ -41,6 +41,7 @@ $lang['email_must_be_array'] = 'The email validation method must be passed an ar $lang['email_invalid_address'] = 'Invalid email address: %s'; $lang['email_attachment_missing'] = 'Unable to locate the following email attachment: %s'; $lang['email_attachment_unreadable'] = 'Unable to open this attachment: %s'; +$lang['email_no_sender'] = 'You must include sender (From)'; $lang['email_no_recipients'] = 'You must include recipients: To, Cc, or Bcc'; $lang['email_send_failure_phpmail'] = 'Unable to send email using PHP mail(). Your server might not be configured to send mail using this method.'; $lang['email_send_failure_sendmail'] = 'Unable to send email using PHP Sendmail. Your server might not be configured to send mail using this method.'; diff --git a/system/libraries/Email.php b/system/libraries/Email.php index a55d2ffea..34ce5b156 100644 --- a/system/libraries/Email.php +++ b/system/libraries/Email.php @@ -1630,6 +1630,12 @@ class CI_Email { */ public function send($auto_clear = TRUE) { + if ( ! isset($this->_headers['From']) ) + { + $this->_set_error_message('lang:email_no_sender'); + return FALSE; + } + if ($this->_replyto_flag === FALSE) { $this->reply_to($this->_headers['From']); -- cgit v1.2.3-24-g4f1b