[SVN] r378 - in /trunk/cyrus-imapd-2.2.13/debian/patches:
0002-allow_invalid_id_acl_removal.dpatch 00list
debian at incase.de
debian at incase.de
Wed May 3 13:30:23 UTC 2006
Author: sven
Date: Wed May 3 15:30:19 2006
New Revision: 378
URL: https://mail.incase.de/viewcvs?rev=378&root=cyrus22&view=rev
Log:
Add upstream patch allowing ACL removal on invalid IDs
Added:
trunk/cyrus-imapd-2.2.13/debian/patches/0002-allow_invalid_id_acl_removal.dpatch (with props)
Modified:
trunk/cyrus-imapd-2.2.13/debian/patches/00list
Added: trunk/cyrus-imapd-2.2.13/debian/patches/0002-allow_invalid_id_acl_removal.dpatch
URL: https://mail.incase.de/viewcvs/trunk/cyrus-imapd-2.2.13/debian/patches/0002-allow_invalid_id_acl_removal.dpatch?rev=378&root=cyrus22&view=auto
==============================================================================
--- trunk/cyrus-imapd-2.2.13/debian/patches/0002-allow_invalid_id_acl_removal.dpatch (added)
+++ trunk/cyrus-imapd-2.2.13/debian/patches/0002-allow_invalid_id_acl_removal.dpatch Wed May 3 15:30:19 2006
@@ -1,0 +1,51 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## fileHfCUIw.dpatch by Sven Mueller <debian at incase.de>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: No description.
+
+ at DPATCH@
+diff -urNad cyrus-imapd-2.2.13/lib/acl_afs.c /tmp/dpep.4TxSCg/cyrus-imapd-2.2.13/lib/acl_afs.c
+--- cyrus-imapd-2.2.13/lib/acl_afs.c 2005-03-12 23:09:22.000000000 +0100
++++ /tmp/dpep.4TxSCg/cyrus-imapd-2.2.13/lib/acl_afs.c 2006-05-03 15:27:47.049193574 +0200
+@@ -114,6 +114,7 @@
+ cyrus_acl_canonproc_t *canonproc;
+ void *canonrock;
+ {
++ const char *canonid;
+ char *newidentifier = 0;
+ char *newacl;
+ char *thisid, *nextid;
+@@ -122,9 +123,14 @@
+
+ /* Convert 'identifier' into canonical form */
+ if (*identifier == '-') {
+- char *canonid = auth_canonifyid(identifier+1, 0);
++ canonid = auth_canonifyid(identifier+1, 0);
+ if (!canonid) {
+- return -1;
++ if (access != 0L) {
++ return -1;
++ } else {
++ /* trying to delete invalid/non-existent identifier */
++ canonid = identifier+1;
++ }
+ }
+ newidentifier = xmalloc(strlen(canonid)+2);
+ newidentifier[0] = '-';
+@@ -135,9 +141,13 @@
+ }
+ }
+ else {
+- identifier = auth_canonifyid(identifier, 0);
+- if (!identifier) {
++ canonid = auth_canonifyid(identifier, 0);
++ if (canonid) {
++ identifier = canonid;
++ } else if (access != 0L) {
+ return -1;
++ } else {
++ /* trying to delete invalid/non-existent identifier */
+ }
+ if (canonproc) {
+ access = canonproc(canonrock, identifier, access);
Propchange: trunk/cyrus-imapd-2.2.13/debian/patches/0002-allow_invalid_id_acl_removal.dpatch
------------------------------------------------------------------------------
svn:executable = *
Modified: trunk/cyrus-imapd-2.2.13/debian/patches/00list
URL: https://mail.incase.de/viewcvs/trunk/cyrus-imapd-2.2.13/debian/patches/00list?rev=378&root=cyrus22&r1=377&r2=378&view=diff
==============================================================================
--- trunk/cyrus-imapd-2.2.13/debian/patches/00list (original)
+++ trunk/cyrus-imapd-2.2.13/debian/patches/00list Wed May 3 15:30:19 2006
@@ -1,4 +1,5 @@
0001-upstream-fix-segfault.dpatch
+0002-allow_invalid_id_acl_removal.dpatch
01-fix_Makefile.in.dpatch
02-add_mkinstalldirs.dpatch
03-fix_docs.dpatch
More information about the Pkg-Cyrus-imapd-Debian-devel
mailing list