NobGit
public nobgit read

NobMail

Based on mailcow: dockerized

Languages

Repository composition by tracked source files.

PHP
PHP 49% JavaScript 35% HTML 9% CSS 4% Shell 2% Python 1% Lua 0% Perl 0% Ruby 0% SCSS 0%
Create file Wiki Documentation
Clone
https://nobgit.com/orgs/nobgit/nobmail.git
ssh://[email protected]:2222/orgs/nobgit/nobmail.git

Commit

Merge branch 'staging' into nightly

9d791d0c
FreddleSpl0it <[email protected]> 1 year, 6 months ago
data/conf/dovecot/conf.d/fts.conf | 2 +-
 data/web/inc/functions.inc.php    | 1 +
 data/web/inc/triggers.inc.php     | 9 ++++-----
 update.sh                         | 4 ++--
 4 files changed, 8 insertions(+), 8 deletions(-)

Diff

diff --cc data/web/inc/functions.inc.php
index 0d9f72ec,7efbee16..a434582c
--- a/data/web/inc/functions.inc.php
+++ b/data/web/inc/functions.inc.php
@@@ -3094,22 -2671,8 +3094,23 @@@ function reset_password($action, $data 
      break;
    }
  }
 -
 -
 +function clear_session(){
 +  session_regenerate_id(true);
 +  session_unset();
 +  session_destroy();
 +  session_write_close();
 +}
 +function set_user_loggedin_session($user) {
++  session_regenerate_id(true);
 +  $_SESSION['mailcow_cc_username'] = $user;
 +  $_SESSION['mailcow_cc_role'] = 'user';
 +  $sogo_sso_pass = file_get_contents("/etc/sogo-sso/sogo-sso.pass");
 +  $_SESSION['sogo-sso-user-allowed'][] = $user;
 +  $_SESSION['sogo-sso-pass'] = $sogo_sso_pass;
 +  unset($_SESSION['pending_mailcow_cc_username']);
 +  unset($_SESSION['pending_mailcow_cc_role']);
 +  unset($_SESSION['pending_tfa_methods']);
 +}
  function get_logs($application, $lines = false) {
    if ($lines === false) {
      $lines = $GLOBALS['LOG_LINES'] - 1;
diff --cc data/web/inc/triggers.inc.php
index ac477a25,5dbd44ab..02db519e
--- a/data/web/inc/triggers.inc.php
+++ b/data/web/inc/triggers.inc.php
@@@ -135,11 -84,11 +135,11 @@@ if (isset($_POST["quick_delete"])) 
  }
  
  if (isset($_POST["login_user"]) && isset($_POST["pass_user"])) {
 -	$login_user = strtolower(trim($_POST["login_user"]));
 -	$as = check_login($login_user, $_POST["pass_user"]);
 +  $login_user = strtolower(trim($_POST["login_user"]));
 +  $as = check_login($login_user, $_POST["pass_user"]);
  
  	if ($as == "admin") {
-     session_regenerate_id();
+     session_regenerate_id(true);
  		$_SESSION['mailcow_cc_username'] = $login_user;
  		$_SESSION['mailcow_cc_role'] = "admin";
  		header("Location: /debug");
@@@ -153,8 -102,9 +153,7 @@@
      die();
  	}
  	elseif ($as == "user") {
 -    session_regenerate_id(true);
 -		$_SESSION['mailcow_cc_username'] = $login_user;
 -		$_SESSION['mailcow_cc_role'] = "user";
 +    set_user_loggedin_session($login_user);
-     session_regenerate_id();
      $http_parameters = explode('&', $_SESSION['index_query_string']);
      unset($_SESSION['index_query_string']);
      if (in_array('mobileconfig', $http_parameters)) {