packages: php/php-imap-myrights.patch - updated to 5.3.1 from http://kolab....

glen glen at pld-linux.org
Sat Feb 20 01:41:46 CET 2010


Author: glen                         Date: Sat Feb 20 00:41:46 2010 GMT
Module: packages                      Tag: HEAD
---- Log message:
- updated to 5.3.1 from http://kolab.org/cgi-bin/viewcvs-kolab.cgi/server/php/patches/php-5.3.1/

---- Files affected:
packages/php:
   php-imap-myrights.patch (1.2 -> 1.3) 

---- Diffs:

================================================================
Index: packages/php/php-imap-myrights.patch
diff -u /dev/null packages/php/php-imap-myrights.patch:1.3
--- /dev/null	Sat Feb 20 01:41:46 2010
+++ packages/php/php-imap-myrights.patch	Sat Feb 20 01:41:41 2010
@@ -0,0 +1,92 @@
+diff -r 5daa8cce8706 ext/imap/php_imap.c
+--- a/ext/imap/php_imap.c	Wed Dec 23 22:46:34 2009 +0100
++++ b/ext/imap/php_imap.c	Wed Dec 23 22:49:02 2009 +0100
+@@ -157,6 +157,11 @@
+ ZEND_END_ARG_INFO()
+ 
+ ZEND_BEGIN_ARG_INFO_EX(arginfo_imap_getacl, 0, 0, 2)
++	ZEND_ARG_INFO(0, stream_id)
++	ZEND_ARG_INFO(0, mailbox)
++ZEND_END_ARG_INFO()
++
++ZEND_BEGIN_ARG_INFO_EX(arginfo_imap_myrights, 0, 0, 2)
+ 	ZEND_ARG_INFO(0, stream_id)
+ 	ZEND_ARG_INFO(0, mailbox)
+ ZEND_END_ARG_INFO()
+@@ -555,6 +560,7 @@
+ 	PHP_FE(imap_set_quota,							arginfo_imap_set_quota)
+ 	PHP_FE(imap_setacl,								arginfo_imap_setacl)
+ 	PHP_FE(imap_getacl,								arginfo_imap_getacl)
++	PHP_FE(imap_myrights,							arginfo_imap_myrights)
+ #endif
+ #if defined(HAVE_IMAP2005)
+  	PHP_FE(imap_setannotation,						arginfo_imap_setannotation)
+@@ -817,6 +823,20 @@
+ 	for(; alist; alist = alist->next) {
+ 		add_assoc_stringl(IMAPG(imap_acl_list), alist->identifier, alist->rights, strlen(alist->rights), 1);
+ 	}
++}
++/* }}} */
++
++/* {{{ mail_myrights
++ *
++ * Mail MYRIGHTS callback
++ * Called via the mail_parameter function in c-client:src/c-client/mail.c
++ */
++void mail_myrights(MAILSTREAM *stream, char *mailbox, char *rights)
++{
++	TSRMLS_FETCH();
++
++	ZVAL_STRING(IMAPG(imap_acl_list), rights, 1)
++
+ }
+ /* }}} */
+ #endif
+@@ -1525,6 +1545,36 @@
+ 	IMAPG(imap_acl_list) = NIL;
+ }
+ /* }}} */
++
++/* {{{ proto string imap_myrights(resource stream_id, string mailbox)
++	Gets my rights (ACL) for a given mailbox */
++PHP_FUNCTION(imap_myrights)
++{
++	zval **streamind, **mailbox;
++	pils *imap_le_struct;
++
++	if(ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &streamind, &mailbox) == FAILURE) {
++		ZEND_WRONG_PARAM_COUNT();
++	}
++
++	ZEND_FETCH_RESOURCE(imap_le_struct, pils *, streamind, -1, "imap", le_imap);
++
++	convert_to_string_ex(mailbox);
++
++	IMAPG(imap_acl_list) = return_value;
++
++	/* set the callback for the GET_ACL function */
++	mail_parameters(NIL, SET_MYRIGHTS, (void *) mail_myrights);
++	if(!imap_myrights(imap_le_struct->imap_stream, Z_STRVAL_PP(mailbox))) {
++		php_error(E_WARNING, "c-client imap_myrights failed");
++		zval_dtor(return_value);
++		RETURN_FALSE;
++	}
++
++	IMAPG(imap_acl_list) = NIL;
++}
++/* }}} */
++
+ #endif /* HAVE_IMAP2000 || HAVE_IMAP2001 */
+  
+ #if defined(HAVE_IMAP2005)
+diff -r 5daa8cce8706 ext/imap/php_imap.h
+--- a/ext/imap/php_imap.h	Wed Dec 23 22:46:34 2009 +0100
++++ b/ext/imap/php_imap.h	Wed Dec 23 22:49:02 2009 +0100
+@@ -183,6 +183,7 @@
+ PHP_FUNCTION(imap_set_quota);
+ PHP_FUNCTION(imap_setacl);
+ PHP_FUNCTION(imap_getacl);
++PHP_FUNCTION(imap_myrights);
+ #endif
+ #if defined(HAVE_IMAP2005)
+ PHP_FUNCTION(imap_setannotation);
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/php/php-imap-myrights.patch?r1=1.2&r2=1.3&f=u



More information about the pld-cvs-commit mailing list