From 00e57d191d7d3223f17709f2bd3afec116e24159 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Thu, 06 Aug 2009 05:21:55 -0400
Subject: [PATCH] - Updated PEAR::Auth_SASL to 1.0.3 version

---
 program/lib/Auth/SASL/DigestMD5.php |    1 
 CHANGELOG                           |    1 
 program/lib/Auth/SASL.php           |    7 +++
 program/lib/Auth/SASL/External.php  |   63 +++++++++++++++++++++++++++++++
 4 files changed, 70 insertions(+), 2 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index 89af28c..f96f0aa 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,7 @@
 CHANGELOG RoundCube Webmail
 ===========================
 
+- Updated PEAR::Auth_SASL to 1.0.3 version
 - Use sequence names only with PostgreSQL (#1486018)
 - Re-designed User Preferences interface 
 - Fix MS SQL DDL (#1486020)
diff --git a/program/lib/Auth/SASL.php b/program/lib/Auth/SASL.php
index 9b7090c..b2be93c 100644
--- a/program/lib/Auth/SASL.php
+++ b/program/lib/Auth/SASL.php
@@ -75,6 +75,11 @@
                 $classname = 'Auth_SASL_Plain';
                 break;
 
+            case 'external':
+                $filename  = 'Auth/SASL/External.php';
+                $classname = 'Auth_SASL_External';
+                break;
+
             case 'crammd5':
                 $filename  = 'Auth/SASL/CramMD5.php';
                 $classname = 'Auth_SASL_CramMD5';
@@ -96,4 +101,4 @@
     }
 }
 
-?>
\ No newline at end of file
+?>
diff --git a/program/lib/Auth/SASL/DigestMD5.php b/program/lib/Auth/SASL/DigestMD5.php
index a465b98..f201622 100644
--- a/program/lib/Auth/SASL/DigestMD5.php
+++ b/program/lib/Auth/SASL/DigestMD5.php
@@ -186,7 +186,6 @@
 
         } else {
             $str = '';
-            mt_srand((double)microtime()*10000000);
             for ($i=0; $i<32; $i++) {
                 $str .= chr(mt_rand(0, 255));
             }
diff --git a/program/lib/Auth/SASL/External.php b/program/lib/Auth/SASL/External.php
new file mode 100644
index 0000000..86a17cb
--- /dev/null
+++ b/program/lib/Auth/SASL/External.php
@@ -0,0 +1,63 @@
+<?php
+// +-----------------------------------------------------------------------+ 
+// | Copyright (c) 2008 Christoph Schulz                                   | 
+// | All rights reserved.                                                  | 
+// |                                                                       | 
+// | Redistribution and use in source and binary forms, with or without    | 
+// | modification, are permitted provided that the following conditions    | 
+// | are met:                                                              | 
+// |                                                                       | 
+// | o Redistributions of source code must retain the above copyright      | 
+// |   notice, this list of conditions and the following disclaimer.       | 
+// | o Redistributions in binary form must reproduce the above copyright   | 
+// |   notice, this list of conditions and the following disclaimer in the | 
+// |   documentation and/or other materials provided with the distribution.| 
+// | o The names of the authors may not be used to endorse or promote      | 
+// |   products derived from this software without specific prior written  | 
+// |   permission.                                                         | 
+// |                                                                       | 
+// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS   | 
+// | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT     | 
+// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | 
+// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT  | 
+// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | 
+// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT      | 
+// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 
+// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 
+// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT   | 
+// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
+// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  | 
+// |                                                                       | 
+// +-----------------------------------------------------------------------+ 
+// | Author: Christoph Schulz <develop@kristov.de>                         | 
+// +-----------------------------------------------------------------------+ 
+// 
+// $Id: External.php 286825 2009-08-05 06:23:42Z cweiske $
+
+/**
+* Implmentation of EXTERNAL SASL mechanism
+*
+* @author  Christoph Schulz <develop@kristov.de>
+* @access  public
+* @version 1.0.3
+* @package Auth_SASL
+*/
+
+require_once('Auth/SASL/Common.php');
+
+class Auth_SASL_External extends Auth_SASL_Common
+{
+    /**
+    * Returns EXTERNAL response
+    *
+    * @param  string $authcid   Authentication id (username)
+    * @param  string $pass      Password
+    * @param  string $authzid   Autorization id
+    * @return string            EXTERNAL Response
+    */
+    function getResponse($authcid, $pass, $authzid = '')
+    {
+        return $authzid;
+    }
+}
+?>

--
Gitblit v1.9.1