Remove use of in function copied from STABLE; change 'FIX ME' to 'FIXME'
[squirrelmail.git] / functions / auth.php
index 49a0b1f1edf4c00ec6b72021fb28456d34d0c408..53b96d9f717e27ee90ef326bc99bb62dfe9fa452 100644 (file)
@@ -9,7 +9,7 @@
  *  functions/global.php
  *  functions/strings.php.
  *
- * @copyright © 1999-2006 The SquirrelMail Project Team
+ * @copyright © 1999-2007 The SquirrelMail Project Team
  * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  * @version $Id$
  * @package squirrelmail
@@ -21,8 +21,8 @@
  *
  * Function is similar to is_logged_in() function. If user is logged in, function
  * returns true. If user is not logged in or session is expired, function saves $_POST
- * and $PHP_SELF in session and returns false. POST information is saved in
- * 'session_expired_post' variable, PHP_SELF is saved in 'session_expired_location'.
+ * and PAGE_NAME in session and returns false. POST information is saved in
+ * 'session_expired_post' variable, PAGE_NAME is saved in 'session_expired_location'.
  *
  * Script that uses this function instead of is_logged_in() function, must handle user
  * level messages.
@@ -34,21 +34,24 @@ function sqauth_is_logged_in() {
         return true;
     }
 
-       //  First we store some information in the new session to prevent
-       //  information-loss.
-       sqGetGlobalVar('PHP_SELF', $PHP_SELF, SQ_SERVER);
+    //  First we store some information in the new session to prevent
+    //  information-loss.
+    $session_expired_post = $_POST;
+    if (defined('PAGE_NAME'))
+        $session_expired_location = PAGE_NAME;
+    else
+        $session_expired_location = '';
 
-       $session_expired_post = $_POST;
-       $session_expired_location = $PHP_SELF;
-       if (!sqsession_is_registered('session_expired_post')) {
-           sqsession_register($session_expired_post,'session_expired_post');
-       }
-       if (!sqsession_is_registered('session_expired_location')) {
-           sqsession_register($session_expired_location,'session_expired_location');
-       }
-       session_write_close();
+    if (!sqsession_is_registered('session_expired_post')) {
+        sqsession_register($session_expired_post,'session_expired_post');
+    }
+    if (!sqsession_is_registered('session_expired_location')) {
+        sqsession_register($session_expired_location,'session_expired_location');
+    }
 
-       return false;
+    session_write_close();
+
+    return false;
 }
 
 /**
@@ -262,7 +265,7 @@ function hmac_md5($data, $key='') {
  *
  * @param string $user Reference to SMTP username
  * @param string $pass Reference to SMTP password (unencrypted)
- * @since 1.5.0
+ * @since 1.4.11
  */
 function get_smtp_user(&$user, &$pass) {
     global $username, $smtp_auth_mech,
@@ -279,4 +282,11 @@ function get_smtp_user(&$user, &$pass) {
         $user = $username;
         $pass = sqauth_read_password();
     }
+
+    // plugin authors note: override $user or $pass by
+    // directly changing the arguments array contents 
+    // in your plugin e.g., $args[0] = 'new_username';
+    //
+    $temp = array(&$user, &$pass);
+    do_hook('smtp_auth', $temp);
 }