From fca73e3418a6ea193e91d692a61a14e54936923f Mon Sep 17 00:00:00 2001 From: geek3000 <58487765+geek3000@users.noreply.github.com> Date: Sat, 2 Apr 2022 15:06:49 +0100 Subject: [PATCH 1/2] Update RoundcubeAutoLogin.php update Set-Cookies to set-cookies regex --- RoundcubeAutoLogin.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/RoundcubeAutoLogin.php b/RoundcubeAutoLogin.php index cd7330c..aca3c75 100644 --- a/RoundcubeAutoLogin.php +++ b/RoundcubeAutoLogin.php @@ -51,7 +51,7 @@ public function login($email, $password) '_token' => $token, '_task' => 'login', '_action' => 'login', - '_timezone' => '', + '_timezone' => 'Africa/Douala', '_url' => '_task=login', '_user' => $email, '_pass' => $password @@ -70,7 +70,7 @@ public function login($email, $password) if($response_info['http_code'] == 302) { // find all relevant cookies to set (php session + rc auth cookie) - preg_match_all('/Set-Cookie: (.*)\b/', $response, $cookies); + preg_match_all('/set-cookie: (.*)\b/', $response, $cookies); $cookie_return = array(); @@ -147,7 +147,8 @@ private function _get_token() // set your roundcube domain path -$rc = new RoundcubeAutoLogin('http://domain.com/roundcube/'); +$rc = new RoundcubeAutoLogin('https://webmail.kmail.africa/'); + $cookies = $rc->login($rcuser, $rcpass); // now you can set the cookies with setcookie php function, or using any other function of a framework you are using @@ -160,5 +161,8 @@ private function _get_token() // and redirect to roundcube with the set cookies $rc->redirect(); } +else{ + echo 'Login failed, please check your credentials'; +} ?> From 96efbef487d44aab949853d1b8393c8d00eaa5fe Mon Sep 17 00:00:00 2001 From: geek3000 <58487765+geek3000@users.noreply.github.com> Date: Mon, 18 Apr 2022 14:30:56 +0100 Subject: [PATCH 2/2] change settings and add case-insensitive 'i' flag --- RoundcubeAutoLogin.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/RoundcubeAutoLogin.php b/RoundcubeAutoLogin.php index aca3c75..ba15bbb 100644 --- a/RoundcubeAutoLogin.php +++ b/RoundcubeAutoLogin.php @@ -51,7 +51,7 @@ public function login($email, $password) '_token' => $token, '_task' => 'login', '_action' => 'login', - '_timezone' => 'Africa/Douala', + '_timezone' => '', '_url' => '_task=login', '_user' => $email, '_pass' => $password @@ -70,7 +70,7 @@ public function login($email, $password) if($response_info['http_code'] == 302) { // find all relevant cookies to set (php session + rc auth cookie) - preg_match_all('/set-cookie: (.*)\b/', $response, $cookies); + preg_match_all('/set-cookie: (.*)\b/i', $response, $cookies); $cookie_return = array(); @@ -147,7 +147,7 @@ private function _get_token() // set your roundcube domain path -$rc = new RoundcubeAutoLogin('https://webmail.kmail.africa/'); +$rc = new RoundcubeAutoLogin('https://www.example.com/'); $cookies = $rc->login($rcuser, $rcpass);