From 44ea3fd4782889ee97717ce925d87979390e4bb3 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Thu, 18 Dec 2008 05:15:39 -0500
Subject: [PATCH] - Fix STARTTLS before AUTH in SMTP connection (#1484883)
---
program/lib/Net/SMTP.php | 19 +++++++------------
1 files changed, 7 insertions(+), 12 deletions(-)
diff --git a/program/lib/Net/SMTP.php b/program/lib/Net/SMTP.php
index 005691d..b9ad4b2 100644
--- a/program/lib/Net/SMTP.php
+++ b/program/lib/Net/SMTP.php
@@ -375,7 +375,7 @@
return true;
}
-
+console($this->_arguments);
foreach ($this->_arguments as $argument) {
$verb = strtok($argument, ' ');
$arguments = substr($argument, strlen($verb) + 1,
@@ -424,11 +424,8 @@
*/
function auth($uid, $pwd , $method = '')
{
- if (empty($this->_esmtp['AUTH'])) {
- if (version_compare(PHP_VERSION, '5.1.0', '>=')) {
- if (!isset($this->_esmtp['STARTTLS'])) {
- return PEAR::raiseError('SMTP server does not support authentication');
- }
+ if (version_compare(PHP_VERSION, '5.1.0', '>=') && isset($this->_esmtp['STARTTLS'])) {
+
if (PEAR::isError($result = $this->_put('STARTTLS'))) {
return $result;
}
@@ -444,12 +441,10 @@
/* Send EHLO again to recieve the AUTH string from the
* SMTP server. */
$this->_negotiate();
- if (empty($this->_esmtp['AUTH'])) {
- return PEAR::raiseError('SMTP server does not support authentication');
- }
- } else {
- return PEAR::raiseError('SMTP server does not support authentication');
- }
+ }
+
+ if (empty($this->_esmtp['AUTH'])) {
+ return PEAR::raiseError('SMTP server does not support authentication');
}
/* If no method has been specified, get the name of the best
--
Gitblit v1.9.1