summaryrefslogtreecommitdiff
path: root/roundcubemail/program
diff options
context:
space:
mode:
authorsparc <sparc@208e9e7b-5314-0410-a742-e7e81cd9613c>2005-10-14 10:57:02 +0000
committersparc <sparc@208e9e7b-5314-0410-a742-e7e81cd9613c>2005-10-14 10:57:02 +0000
commit3e0cd55fd315ef0db68cf7c52af896fce7f9dde4 (patch)
tree6cb5f6f695711cf5a0888c6c9165a8effb1debd0 /roundcubemail/program
parent3f6b7b24d6561c7a9db5e2af340eb501c05c12f8 (diff)
added smtp auth method setting through config file
git-svn-id: https://svn.roundcube.net/trunk@34 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program')
-rw-r--r--roundcubemail/program/include/rcube_smtp.inc17
1 files changed, 14 insertions, 3 deletions
diff --git a/roundcubemail/program/include/rcube_smtp.inc b/roundcubemail/program/include/rcube_smtp.inc
index fd45a00cd..bc204638b 100644
--- a/roundcubemail/program/include/rcube_smtp.inc
+++ b/roundcubemail/program/include/rcube_smtp.inc
@@ -72,12 +72,23 @@ function smtp_mail($from, $recipients, $headers, $body)
$SMTP_ERROR .= "Connection failed\n";
return FALSE;
}
-
-
+
// attempt to authenticate to the SMTP server
if ($CONFIG['smtp_user'] && $CONFIG['smtp_pass'])
{
- if (PEAR::isError($SMTP_CONN->auth($CONFIG['smtp_user'], $CONFIG['smtp_pass'])))
+ if ($CONFIG['smtp_user'] == '%u')
+ $smtp_user = $_SESSION['username'];
+ else
+ $smtp_user = $CONFIG['smtp_user'];
+
+ if ($CONFIG['smtp_pass'] == '%p')
+ $smtp_pass = decrypt_passwd($_SESSION['password']);
+ else
+ $smtp_pass = $CONFIG['smtp_pass'];
+
+ $smtp_auth_type = smpty($CONFIG['smtp_auth_type']) ? NULL : $CONFIG['smtp_auth_type'];
+
+ if (PEAR::isError($SMTP_CONN->auth($smtp_user, $smtp_pass, $smtp_auth_type)))
{
smtp_reset();
$SMTP_ERROR .= "authentication failure\n";