Projects
Kolab:Winterfell
roundcubemail-plugins-kolab
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 146
View file
roundcubemail-plugins-kolab.spec
Changed
@@ -35,13 +35,13 @@ %global confdir %{_sysconfdir}/roundcubemail %global tmpdir %{_var}/lib/roundcubemail -%global rc_version 3.5.7 +%global rc_version 3.5.8 #%%global rc_rel_suffix beta1 %global dot_rel_suffix %{?rc_rel_suffix:.%{rc_rel_suffix}} %global dash_rel_suffix %{?rc_rel_suffix:-%{rc_rel_suffix}} Name: roundcubemail-plugins-kolab -Version: 3.5.7 +Version: 3.5.8 Release: 1%{?dot_rel_suffix}%{?dist} @@ -2792,8 +2792,8 @@ %defattr(-,root,root,-) %changelog -* Tue Apr 13 2021 Jeroen van Meeuwen <vanmeeuwen@apheleia-it.ch> - 3.5.7-1 -- Release of version 3.5.7 +* Wed Sep 1 2021 Jeroen van Meeuwen <vanmeeuwen@apheleia-it.ch> - 3.5.8-1 +- Release of version 3.5.8 * Fri Oct 16 2020 Jeroen van Meeuwen <vanmeeuwen@kolabsys.com> - 3.5.5-1 - Release of version 3.5.5
View file
debian.changelog
Changed
@@ -1,8 +1,8 @@ -roundcubemail-plugins-kolab (1:3.5.7-0~kolab1) unstable; urgency=low +roundcubemail-plugins-kolab (1:3.5.8-0~kolab1) unstable; urgency=low - * Release version 3.5.7 + * Release version 3.5.8 - -- Jeroen van Meeuwen <vanmeeuwen@apheleia-it.ch> Tue, 13 Apr 2021 11:11:11 +0200 + -- Jeroen van Meeuwen <vanmeeuwen@apheleia-it.ch> Wed, 1 Sep 2021 11:11:11 +0200 roundcubemail-plugins-kolab (1:3.5.6-0~kolab1) unstable; urgency=low
View file
roundcubemail-plugins-kolab-3.5.7.tar.gz/plugins/calendar/calendar_ui.js -> roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/calendar_ui.js
Changed
@@ -82,6 +82,7 @@ dayNamesShort: settings.days_short, weekNumbers: settings.show_weekno > 0, weekNumberTitle: rcmail.gettext('weekshort', 'calendar') + ' ', + weekNumberCalculation: 'ISO', firstDay: settings.first_day, firstHour: settings.first_hour, slotDuration: {minutes: 60/settings.timeslots},
View file
roundcubemail-plugins-kolab-3.5.7.tar.gz/plugins/calendar/composer.json -> roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/calendar/composer.json
Changed
@@ -4,7 +4,7 @@ "description": "Calendar plugin", "homepage": "https://git.kolab.org/diffusion/RPK/", "license": "AGPLv3", - "version": "3.5.7", + "version": "3.5.8", "authors": [ { "name": "Thomas Bruederli",
View file
roundcubemail-plugins-kolab-3.5.7.tar.gz/plugins/kolab_2fa/composer.json -> roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/kolab_2fa/composer.json
Changed
@@ -4,7 +4,7 @@ "description": "Kolab 2-Factor Authentication", "homepage": "https://git.kolab.org/diffusion/RPK/", "license": "AGPLv3", - "version": "3.5.6", + "version": "3.5.8", "authors": [ { "name": "Thomas Bruederli",
View file
roundcubemail-plugins-kolab-3.5.7.tar.gz/plugins/kolab_2fa/kolab_2fa.php -> roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/kolab_2fa/kolab_2fa.php
Changed
@@ -88,24 +88,34 @@ // parse $host URL $a_host = parse_url($args['host']); $hostname = $_SESSION['hostname'] = $a_host['host'] ?: $args['host']; + $username = !empty($_SESSION['kolab_auth_admin']) ? $_SESSION['kolab_auth_admin'] : $args['user']; - // 1. find user record (and its prefs) before IMAP login - if ($user = rcube_user::query($args['user'], $hostname)) { - $rcmail->config->set_user_prefs($user->get_prefs()); + // Convert username to lowercase. Copied from rcmail::login() + $login_lc = $rcmail->config->get('login_lc', 2); + if ($login_lc) { + if ($login_lc == 2 || $login_lc === true) { + $username = mb_strtolower($username); + } + else if (strpos($username, '@')) { + // lowercase domain name + list($local, $domain) = explode('@', $username); + $username = $local . '@' . mb_strtolower($domain); + } } // 2a. let plugins provide the list of active authentication factors $lookup = $rcmail->plugins->exec_hook('kolab_2fa_lookup', array( - 'user' => $args['user'], + 'user' => $username, 'host' => $hostname, - 'factors' => $rcmail->config->get('kolab_2fa_factors'), + 'factors' => null, 'check' => $rcmail->config->get('kolab_2fa_check', true), )); + if (isset($lookup['factors'])) { $factors = (array)$lookup['factors']; } // 2b. check storage if this user has 2FA enabled - else if ($lookup['check'] !== false && ($storage = $this->get_storage($args['user']))) { + else if ($lookup['check'] !== false && ($storage = $this->get_storage($username))) { $factors = (array)$storage->enumerate(); } @@ -149,14 +159,15 @@ */ public function login_verify($args) { - $rcmail = rcmail::get_instance(); + $this->login_verified = false; - $time = $_SESSION['kolab_2fa_time']; - $nonce = $_SESSION['kolab_2fa_nonce']; - $factors = (array)$_SESSION['kolab_2fa_factors']; + $rcmail = rcmail::get_instance(); - $this->login_verified = false; - $expired = $time < time() - $rcmail->config->get('kolab_2fa_timeout', 120); + $time = $_SESSION['kolab_2fa_time']; + $nonce = $_SESSION['kolab_2fa_nonce']; + $factors = (array)$_SESSION['kolab_2fa_factors']; + $expired = $time < time() - $rcmail->config->get('kolab_2fa_timeout', 120); + $username = !empty($_SESSION['kolab_auth_admin']) ? $_SESSION['kolab_auth_admin'] : $_SESSION['username']; if (!empty($factors) && !empty($nonce) && !$expired) { // TODO: check signature @@ -167,7 +178,7 @@ // verify the submitted code $code = rcube_utils::get_input_value("_${nonce}_${method}", rcube_utils::INPUT_POST); - $this->login_verified = $this->verify_factor_auth($factor, $code); + $this->login_verified = $this->verify_factor_auth($factor, $code, $username); // accept first successful method if ($this->login_verified) { @@ -181,6 +192,11 @@ $_POST['_user'] = $_SESSION['username']; $_POST['_host'] = $_SESSION['host']; $_POST['_pass'] = $rcmail->decrypt($_SESSION['password']); + + if ($_SESSION['kolab_auth_admin']) { + $_POST['_user'] = $_SESSION['kolab_auth_admin']; + $_POST['_loginas'] = $_SESSION['username']; + } } // proceed with regular login ... @@ -195,15 +211,15 @@ return $args; } - + /** * Helper method to verify the given method/code tuple */ - protected function verify_factor_auth($method, $code) + protected function verify_factor_auth($method, $code, $username) { if (strlen($code) && ($driver = $this->get_driver($method))) { // set properties from login - $driver->username = $_SESSION['username']; + $driver->username = $username; try { // verify the submitted code
View file
roundcubemail-plugins-kolab-3.5.7.tar.gz/plugins/kolab_auth/composer.json -> roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/kolab_auth/composer.json
Changed
@@ -4,7 +4,7 @@ "description": "Kolab authentication", "homepage": "https://git.kolab.org/diffusion/RPK/", "license": "AGPLv3", - "version": "3.5.4", + "version": "3.5.8", "authors": [ { "name": "Thomas Bruederli",
View file
roundcubemail-plugins-kolab-3.5.7.tar.gz/plugins/kolab_auth/kolab_auth.php -> roundcubemail-plugins-kolab-3.5.8.tar.gz/plugins/kolab_auth/kolab_auth.php
Changed
@@ -433,13 +433,20 @@ return $args; } + // Don't add the extra field on 2FA form + if (strpos($args['content'], 'plugin.kolab-2fa-login')) { + return $args; + } + $input = new html_inputfield(array('name' => '_loginas', 'id' => 'rcmloginas', 'type' => 'text', 'autocomplete' => 'off')); $row = html::tag('tr', null, html::tag('td', 'title', html::label('rcmloginas', rcube::Q($this->gettext('loginas')))) . html::tag('td', 'input', $input->show(trim(rcube_utils::get_input_value('_loginas', rcube_utils::INPUT_POST)))) ); - $args['content'] = preg_replace('/<\/tbody>/i', $row . '</tbody>', $args['content']); + // add icon style for Elastic + $style = html::tag('style', [], '#login-form .input-group .icon.loginas::before { content: "\f508"; } '); + $args['content'] = preg_replace('/<\/tbody>/i', $row . '</tbody>' . $style, $args['content']); return $args; }
View file
roundcubemail-plugins-kolab.dsc
Changed
@@ -2,7 +2,7 @@ Source: roundcubemail-plugins-kolab Binary: roundcubemail-plugins-kolab Architecture: all -Version: 1:3.5.7-0~kolab1 +Version: 1:3.5.8-0~kolab1 Maintainer: Jeroen van Meeuwen <vanmeeuwen@kolabsys.com> Uploaders: Jeroen van Meeuwen <vanmeeuwen@kolabsys.com> Standards-Version: 3.9.3 @@ -37,5 +37,5 @@ roundcubemail-plugin-tinymce-config deb web extra roundcubemail-plugin-wap-client deb web extra Files: - 00000000000000000000000000000000 0 roundcubemail-plugins-kolab-3.5.7.tar.gz + 00000000000000000000000000000000 0 roundcubemail-plugins-kolab-3.5.8.tar.gz 00000000000000000000000000000000 0 debian.tar.gz
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.