Kolab-major-app-patches

From Kolab Wiki

Jump to: navigation, search


For Kolab to work correctly some major applications have been patched. The necessary patches are detailed here as well as the current status of the patches.

The status of some patches is also available at the Kolab bug tracker.

Contents


UW IMAP c-client

PHP needs to access IMAP folder annotations and PHP uses the c-client library for IMAP access. The c-client library currently lacks annotation support.

Pending patch
Patch source: uw-imap c-client patch
Applies to: imap-2006j2
Description: The patch for the imap library provided by the university of Washington adds the capabilities for setting/getting imap annotations. This is needed for imap caching in the free/busy system of Kolab-2.1. In addition this patch is required to accelerate Horde.
Impact: The free/busy system won't work without this patch. Horde will run slower if not using this patch.
References: Kolab bug tracker merge: ID=10
History: The patch has been sent to the uw-imap developers in June 2005.
Nothing has happened and it has been resent in March 2007.
The developers responded that inclusion of this features currently depends on publication of this draft as a RFC.
This is now a proposed standard: RFC 5464 The IMAP METADATA Extension (as of February 2009).
The patch will probably not be applied as UW-IMAP is almost unmaintained now (see merge)


PHP

PHP uses the c-client library and requires patches to use the annotation features that are provided within the c-client library of a Kolab server.


Pending patch
Patch source: get/set annotation patch
Applies to: php-5.2.x
Description: This provides the imap_getannotation and imap_setannotation functions within PHP.
Impact: The free/busy system will not work without this patch. Horde will be slower if this patch is not provided.
References: Kolab bug tracker merge: ID=16
History: This patch depends on the imap c-client patch since PHP uses the c-client library. This can only move forward once the c-client patch has been integrated..


Pending patch
Patch source: my_rights patch
Applies to: php-5.2.x
Description: This provides the imap_myrights function within PHP. This is needed for correct share handling within Horde-3.2.
Impact: The Horde share system won't work without this patch. User won't be able to share folders.
References: Kolab bug tracker merge: ID=77
History: This patch is only needed for horde clients! The patch is listed here to obtain an overview of _all_ patches related to kolab. The patch has been sent upstream twice, but no response from the upstream developers.


Cyrus IMAPD

The Cyrus IMAP server needs a variety of patches so that it can be used for a Kolab server.


Applied patch
Patch source: Annotations2.patch
Applies to: cyrus-imapd < 2.3.15
Description: There is an imap extension for adding "annotations" (eg. metadata) to imap folders in the form of key/value pairs. The key is typically something like /vendor/<vendorname>/<attributename>. Cyrus imapd only supports a few special annotation keys for internal use (such as being able to mark a folder for indexing etc.). The patch extends cyrus imapd to allow arbitrary annotations on IMAP folders.
Impact: The annotation patch is critical to kolab. Without the patch, the clients will not know which folder is for calender, tasks etc.
References: Kolab bug tracker merge: ID=4
The same patch is availabe for cyrus-2.3.7 (Originates from Kolab2/Gentoo)
Applied in: cyrus-imapd-2.3.16 2009-12-21
History: The patch has been submitted upstream and the original version was rejected.
A new version of the patch has been provided recently by Thomas Viemann.
It looked as though upstream would accept the patch but so far nothing has happened.
Another status inquiry on 2007-05-21.
This is now a proposed standard: RFC 5464 The IMAP METADATA Extension (as of February 2009)


Applied patch
Patch source: Cyradm_Annotations.patch
Applies to: cyrus-imapd < 2.4.?
Description: This is the cyradm extension for supporting "annotations" (eg. metadata) to imap folders in the form of key/value pairs.
Impact: Without this patch cyradm cannot be used to set custom annotations.
References: Kolab bug tracker merge: ID=33
The same patch is availabe for cyrus-2.3.7 (Originates from Kolab2/Gentoo)
Applied in: Merged on 2010-10-01
History: Depends on the annotation patch to cyrus-imapd. Can only be resolved once the other patch has been applied.
Jeroen van Meeuwen (Kolab Systems): Submitted patch through cyrus-devel.


Pending patch
Patch source: Groups2.patch
Applies to: cyrus-imapd-2.2.12
Description: Plain cyrus imapd reads groups from /etc/group, and OpenPKG includes a patch that allows us to use a private file (for example /kolab/etc/imapd/groupfile) for this instead of the system one. Groups in cyrus can be used in ACLs. To cater for MS windows users who are not used to "case matters", the kolab developers patched the openpkg patch to use case-insignificant string comparison when looking up groups.
Impact: Groups won't work for the Kolab server if this patch is missing.
References: Kolab bug tracker merge: ID=6
The Kolab CVS system only holds the Kolab specific part of the patch. The basic OpenPKG patch is also necessary.
The OpenPKG patch is availabe for cyrus-2.3.7 (Originates from Kolab2/Gentoo)
The Kolab patch is availabe for cyrus-2.3.7 (Originates from Kolab2/Gentoo)
History: The patch has been submitted upstream but upstream never reacted.
Another status inquiry on 2007-05-21.


Pending patch
Patch source: Logging.patch
Applies to: cyrus-imapd-2.2.12
Description: Logs IMAP expunge events.
Impact: Not necessary for the Kolab server. Just adds some more information to your logs.
References: Kolab bug tracker merge: ID=13
The patch is also availabe for cyrus-2.3.7 (Originates from Kolab2/Gentoo)
History: The patch has been submitted upstream on 2007-05-21.


Pending patch
Patch source: Cross-Domain-Acls.patch
Applies to: cyrus-imapd-2.2.13
Description: Enables users to set ACLs for accounts in other domains an thereby allows to share folders across domain boundaries on multi-domain setups.
Impact: Without the patch sharing folders across domains is impossible. This is a contracted feature.
References: Kolab bug tracker Issue1141
Message to cyrus imapd developer mailing list.
History: The patch was send to the developer list (see references) but upstream did not react.


Problematic patch
Patch source: Folder-names.patch
Applies to: cyrus-imapd-2.2.12
Description: Specifies the allowed characters in IMAP folder names.
Impact: Without this patch some folder names will not work.
References: Kolab bug tracker merge: ID=34
The patch is also availabe for cyrus-2.3.7 (Originates from Kolab2/Gentoo)
Problem: Part of the current patch has been applied. But the remaining patch hardwires the acceptable characters for folder names. This is something that will probably not be accepted upstream and the patch was never submitted. It would be good if this would be rewritten to make the acceptable characters a configuration option (this has been done in http://lists.andrew.cmu.edu/pipermail/cyrus-devel/2010-August/001523.html). See also this bug that never got a response.



Problematic patch
Patch source: UID.patch
Applies to: cyrus-imapd-2.2.12
Description: Allows to use the uid instead of the mail address for logging into the cyrus imap server.
Impact: Without this patch users will be unable to use the UID for logging in.
References: Kolab bug tracker merge: ID=5
The patch is also availabe for cyrus-2.3.7 (Originates from Kolab2/Gentoo)
Problem: This has been specifically written for Kolab and is not compatible with upstream. It needs to be rewritten to a general LDAP filter support if it should be integrated upstream.


The murder patch is unused at the moment.

Personal tools