Overview
Request 2880 (accepted)
Release 3.2.16
- Created by vanmeeuwen over 3 years ago
- In state accepted
kolab-webadmin.spec
Changed
x
1
2
%global kolabr_group_id 414
3
4
Name: kolab-webadmin
5
-Version: 3.2.15
6
-Release: 2%{?dist}
7
+Version: 3.2.16
8
+Release: 1%{?dist}
9
Summary: Kolab Groupware Server Web Administration Interface
10
License: AGPLv3+
11
Group: Productivity/Office/Organizers
12
13
14
Source0: https://mirror.kolabenterprise.com/pub/releases/%{name}-%{version}.tar.gz
15
16
-Patch0: 0001-T5647-Fix-kolab-admin-role-created-in-wrong-base_dn-.patch
17
-Patch1: 0002-Fixed-T5653-and-support-domain_edit-in-hosted-mode.patch
18
-Patch2: 0003-check-for-mail-address-is-already-in-use.patch
19
-
20
BuildArch: noarch
21
BuildRoot: %{_tmppath}/%{name}-%{version}-build
22
23
24
fi
25
done
26
27
-%patch0 -p1
28
-%patch1 -p1
29
-%patch2 -p1
30
-
31
%build
32
33
%install
34
35
%attr(0770,%{httpd_user},%{httpd_group}) %{_var}/log/%{name}
36
37
%changelog
38
+* Wed Nov 17 2021 Jeroen van Meeuwen (Apheleia IT) <vanmeeuwen@apheleia-it.ch> - 3.2.16-1
39
+- Release 3.2.16
40
+
41
* Sun Dec 22 2019 Daniel Hoffend <dh@dotlan.net> - 3.2.15-2
42
- Adding hotfixes for domain creation/edit in hosted mode
43
44
0001-T5647-Fix-kolab-admin-role-created-in-wrong-base_dn-.patch
Deleted
30
1
2
-From ea2522021505627c7955b7cafe939799ef429086 Mon Sep 17 00:00:00 2001
3
-From: Aleksander Machniak <machniak@kolabsys.com>
4
-Date: Fri, 8 Nov 2019 07:50:18 +0000
5
-Subject: [PATCH 1/3] T5647: Fix kolab-admin role created in wrong base_dn for
6
- hosted domains
7
-
8
----
9
- lib/kolab_api_service.php | 4 ++--
10
- 1 file changed, 2 insertions(+), 2 deletions(-)
11
-
12
-diff --git a/lib/kolab_api_service.php b/lib/kolab_api_service.php
13
-index c098de1..6390b3c 100644
14
---- a/lib/kolab_api_service.php
15
-+++ b/lib/kolab_api_service.php
16
-@@ -415,8 +415,8 @@ abstract class kolab_api_service
17
- }
18
- }
19
-
20
-- // OU's parent attribute
21
-- if ($object_name == 'ou' && !empty($attribs['base_dn'])) {
22
-+ // Support base_dn attribute
23
-+ if ($object_name != 'domain' && !empty($attribs['base_dn'])) {
24
- // @TODO: validate?
25
- $result['base_dn'] = $attribs['base_dn'];
26
- }
27
---
28
-2.20.1
29
-
30
0002-Fixed-T5653-and-support-domain_edit-in-hosted-mode.patch
Deleted
43
1
2
-From 4ad311ebb6c1d98dae302617a5a9c4dd66219179 Mon Sep 17 00:00:00 2001
3
-From: Daniel Hoffend <dh@dotlan.net>
4
-Date: Tue, 26 Nov 2019 09:22:47 +0100
5
-Subject: [PATCH 2/3] Fixed T5653 and support domain_edit in hosted mode
6
-
7
-Summary:
8
-This patch fixed the domain_edit api call in hosted mode. The Bug is
9
-described in T5653
10
-
11
-Reviewers: #web_administration_panel_developers, vanmeeuwen
12
-
13
-Reviewed By: #web_administration_panel_developers, vanmeeuwen
14
-
15
-Subscribers: vanmeeuwen
16
-
17
-Tags: #web_administration_panel
18
-
19
-Differential Revision: https://git.kolab.org/D835
20
----
21
- lib/Auth/LDAP.php | 5 +++++
22
- 1 file changed, 5 insertions(+)
23
-
24
-diff --git a/lib/Auth/LDAP.php b/lib/Auth/LDAP.php
25
-index 4bf2a8f..aac6df8 100644
26
---- a/lib/Auth/LDAP.php
27
-+++ b/lib/Auth/LDAP.php
28
-@@ -396,6 +396,11 @@ class LDAP extends Net_LDAP3 {
29
- return false;
30
- }
31
-
32
-+ // remove invalid/hidden attributes
33
-+ if (isset($attributes['domainrelatedobject_only'])) {
34
-+ unset($attributes['domainrelatedobject_only']);
35
-+ }
36
-+
37
- $domain_dn = key($domain);
38
-
39
- // We should start throwing stuff over the fence here.
40
---
41
-2.20.1
42
-
43
0003-check-for-mail-address-is-already-in-use.patch
Deleted
41
1
2
-From fa1ff0c3a21bbceeca674858b72c9391187d3d74 Mon Sep 17 00:00:00 2001
3
-From: Daniel Hoffend <dh@dotlan.net>
4
-Date: Tue, 26 Nov 2019 09:29:53 +0100
5
-Subject: [PATCH 3/3] check for mail address is already in use
6
-
7
-Summary: This fixes issue T5704
8
-
9
-Reviewers: #web_administration_panel_developers, vanmeeuwen
10
-
11
-Reviewed By: #web_administration_panel_developers, vanmeeuwen
12
-
13
-Subscribers: vanmeeuwen
14
-
15
-Maniphest Tasks: T5704
16
-
17
-Differential Revision: https://git.kolab.org/D883
18
----
19
- lib/api/kolab_api_service_form_value.php | 5 +++++
20
- 1 file changed, 5 insertions(+)
21
-
22
-diff --git a/lib/api/kolab_api_service_form_value.php b/lib/api/kolab_api_service_form_value.php
23
-index 58799f6..2edee57 100644
24
---- a/lib/api/kolab_api_service_form_value.php
25
-+++ b/lib/api/kolab_api_service_form_value.php
26
-@@ -1276,6 +1276,11 @@ class kolab_api_service_form_value extends kolab_api_service
27
- }
28
- }
29
-
30
-+ // Check if addresses are not already in use
31
-+ if ($validation_type == self::VALIDATE_EXTENDED) {
32
-+ $this->_email_addresses_in_use($value, 'mail', $postdata);
33
-+ }
34
-+
35
- return 'OK';
36
- }
37
-
38
---
39
-2.20.1
40
-
41
debian.changelog
Changed
11
1
2
+kolab-webadmin (3.2.16-0~kolab1) unstable; urgency=low
3
+
4
+ * Release 3.2.16
5
+
6
+ -- Jeroen van Meeuwen (Apheleia IT) <vanmeeuwen@apheleia-it.ch> Wed, 17 Nov 2021 22:08:00 +0100
7
+
8
kolab-webadmin (3.2.15-0~kolab3) unstable; urgency=low
9
10
* Fixed T5653 and support domain_edit in hosted mode
11
debian.series
Changed
6
1
2
-0001-T5647-Fix-kolab-admin-role-created-in-wrong-base_dn-.patch -p1
3
-0002-Fixed-T5653-and-support-domain_edit-in-hosted-mode.patch -p1
4
-0003-check-for-mail-address-is-already-in-use.patch -p1
5
-
6
kolab-webadmin-3.2.15.tar.gz/lib/Auth/LDAP.php -> kolab-webadmin-3.2.16.tar.gz/lib/Auth/LDAP.php
Changed
24
1
2
return false;
3
}
4
5
+ // remove invalid/hidden attributes
6
+ if (isset($attributes['domainrelatedobject_only'])) {
7
+ unset($attributes['domainrelatedobject_only']);
8
+ }
9
+
10
$domain_dn = key($domain);
11
12
// We should start throwing stuff over the fence here.
13
14
// LDAP3 search parameters
15
$opts = array(
16
'search' => $search,
17
- 'sort' => $params['sort_by'], // for VLV
18
+ // T409349: Remove the 'sort' parameter to use default VLV sorting
19
+ // If the param value is not the same as in VLV, search will not use the index.
20
+ // 'sort' => $params['sort_by'], // for VLV
21
);
22
23
$result = $this->search_entries($base_dn, $filter, $scope, $attributes, $opts);
24
kolab-webadmin-3.2.15.tar.gz/lib/api/kolab_api_service_domain.php -> kolab-webadmin-3.2.16.tar.gz/lib/api/kolab_api_service_domain.php
Changed
53
1
2
3
$attributes = $this->parse_input_attributes('domain', $postdata, $postdata['type_id']);
4
5
- $this->_mod_domain_attrs(null, $attributes);
6
+ $this->_mod_domain_attrs(null, $attributes, $postdata['id']);
7
8
$result = $auth->domain_edit($postdata['id'], $attributes, $postdata['type_id']);
9
10
11
/**
12
* Modify hosted domain attributes
13
*/
14
- protected function _mod_domain_attrs($domain, &$attributes)
15
+ protected function _mod_domain_attrs($domain, &$attributes, $olddn = null)
16
{
17
// Generate attributes (aci, inetdomainbasedn) for hosted domains
18
$conf = Conf::get_instance();
19
20
. 'ldap:///cn=kolab-admin,' . $mgmt_root_dn . '");)'
21
);
22
23
- $attributes['aci'] = $aci;
24
- $attributes['inetdomainbasedn'] = $domain_root_dn;
25
+ // Preserve important old aci and inetdomainbasedn attributes of the
26
+ // management and hosted domain.
27
+ if (!empty($olddn)) {
28
+ $auth = Auth::get_instance();
29
+ $info = $auth->domain_info($olddn);
30
+ if (!empty($info)) {
31
+ $oldattributes = reset($info);
32
+ if (!empty($oldattributes['inetdomainbasedn'])
33
+ && $oldattributes['inetdomainbasedn'] == $hosted_root_dn
34
+ || "dc=".implode(",dc=",explode(".",$domain)) == $mgmt_root_dn
35
+ ) {
36
+ $aci = $oldattributes['aci'];
37
+ if (!empty($oldattributes['inetdomainbasedn'])) {
38
+ $domain_root_dn = $oldattributes['inetdomainbasedn'];
39
+ } else {
40
+ $domain_root_dn = null;
41
+ }
42
+ }
43
+ }
44
+ }
45
+
46
+ $attributes['aci'] = $aci;
47
+ if (!empty($domain_root_dn)) {
48
+ $attributes['inetdomainbasedn'] = $domain_root_dn;
49
+ }
50
51
$this->is_hosted = true;
52
}
53
kolab-webadmin-3.2.15.tar.gz/lib/api/kolab_api_service_form_value.php -> kolab-webadmin-3.2.16.tar.gz/lib/api/kolab_api_service_form_value.php
Changed
50
1
2
}
3
}
4
5
+ // Check if addresses are not already in use
6
+ if ($validation_type == self::VALIDATE_EXTENDED) {
7
+ $this->_email_addresses_in_use($value, 'mail', $postdata);
8
+ }
9
+
10
return 'OK';
11
}
12
13
14
}
15
}
16
17
+ $domains = array_map('strtolower', $domains);
18
$domains = array_unique($domains);
19
20
Log::trace("_get_valid_domains result: " . var_export($domains, true));
21
22
$at_index = strrpos($mail_address, "@");
23
if (is_bool($at_index) && !$at_index) {
24
throw new Exception("Invalid email address: No domain name space", 235);
25
- } else {
26
- $email_domain = substr($mail_address, $at_index+1);
27
}
28
29
+ $email_domain = substr($mail_address, $at_index + 1);
30
+ $email_domain = strtolower($email_domain);
31
+
32
$my_primary_domain = $_SESSION['user']->get_domain();
33
34
if ($email_domain == $my_primary_domain) {
35
36
return true;
37
}
38
39
- $valid = false;
40
+ $valid = false;
41
Log::trace("_validate_email_address_in_any_of_mydomains(\$mail_address = " . var_export($mail_address, TRUE) . ")");
42
43
if (in_array($email_domain, $this->_get_valid_domains($my_primary_domain))) {
44
45
46
return $valid;
47
}
48
-
49
}
50
kolab-webadmin-3.2.15.tar.gz/lib/kolab_api_service.php -> kolab-webadmin-3.2.16.tar.gz/lib/kolab_api_service.php
Changed
21
1
2
3
$value = implode('', $value);
4
} else if (is_string($value)) {
5
- $value = $this->conf->expand($_value, $custom = Array('base_dn' => $this->base_dn()));
6
+ $value = $this->conf->expand($value, $custom = Array('base_dn' => $this->base_dn()));
7
}
8
9
if (is_array($v)) {
10
11
}
12
}
13
14
- // OU's parent attribute
15
- if ($object_name == 'ou' && !empty($attribs['base_dn'])) {
16
+ // Support base_dn attribute
17
+ if ($object_name != 'domain' && !empty($attribs['base_dn'])) {
18
// @TODO: validate?
19
$result['base_dn'] = $attribs['base_dn'];
20
}
21
kolab-webadmin.dsc
Changed
19
1
2
Source: kolab-webadmin
3
Binary: kolab-webadmin
4
Architecture: all
5
-Version: 3.2.15-0~kolab3
6
-Maintainer: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com>
7
+Version: 3.2.16-0~kolab1
8
+Maintainer: Jeroen van Meeuwen (Apheleia IT) <vanmeeuwen@apheleia-it.ch>
9
Uploaders: Paul Klos <kolab@klos2day.nl>
10
Homepage: http://www.kolab.org/
11
Standards-Version: 3.9.3
12
13
Package-List:
14
kolab-webadmin deb admin extra
15
Files:
16
- 00000000000000000000000000000000 0 kolab-webadmin-3.2.15.tar.gz
17
+ 00000000000000000000000000000000 0 kolab-webadmin-3.2.16.tar.gz
18
00000000000000000000000000000000 0 debian.tar.gz
19
Refresh
Refresh
Login required, please
login
in order to comment
Request History
vanmeeuwen created request over 3 years ago
Release 3.2.16
vanmeeuwen accepted review over 3 years ago
Accept
vanmeeuwen accepted review over 3 years ago
Accept
vanmeeuwen approved review over 3 years ago
Accept
vanmeeuwen accepted request over 3 years ago
Accept