cvs: php4 /ext/vpopmail php_vpopmail.c
| From: | Boian Bonev | Date: | Fri, 13 Jul 2001 20:45:17 +0000 |
| Subject: | cvs: php4 /ext/vpopmail php_vpopmail.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-6218@lists.php.net to get a copy of this message | ||
bbonev Fri Jul 13 16:45:17 2001 EDT
Modified files:
/php4/ext/vpopmail php_vpopmail.c
Log:
replaced add_index_string with add_next_index_string
made vpopmail_alias_get_all return sane result
Index: php4/ext/vpopmail/php_vpopmail.c
diff -u php4/ext/vpopmail/php_vpopmail.c:1.14 php4/ext/vpopmail/php_vpopmail.c:1.15
--- php4/ext/vpopmail/php_vpopmail.c:1.14 Wed Jun 6 10:32:23 2001
+++ php4/ext/vpopmail/php_vpopmail.c Fri Jul 13 16:45:17 2001
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_vpopmail.c,v 1.14 2001/06/06 14:32:23 rasmus Exp $ */
+/* $Id: php_vpopmail.c,v 1.15 2001/07/13 20:45:17 bbonev Exp $ */
/* TODO: move to config.m4 when support for old versions is ready or just
* don't support rather old vpopmail. current version must bail out if
@@ -857,7 +857,6 @@
zval **domain;
int retval;
char *talias;
- uint index=0;
if (ZEND_NUM_ARGS() != 2
|| zend_get_parameters_ex(ZEND_NUM_ARGS(), &alias, &domain) == FAILURE)
@@ -876,7 +875,7 @@
talias=valias_select(Z_STRVAL_PP(alias), Z_STRVAL_PP(domain));
while (talias) {
- add_index_string(return_value,index++,talias,1);
+ add_next_index_string(return_value,talias,1);
talias=valias_select_next();
}
}
@@ -890,7 +889,8 @@
int retval;
char *talias;
char tpath[1024];
- uint index=0;
+ char ppath[1024]="";
+ zval *tarr;
if (ZEND_NUM_ARGS() != 1
|| zend_get_parameters_ex(ZEND_NUM_ARGS(), &domain) == FAILURE)
@@ -908,9 +908,16 @@
talias=valias_select_all(tpath, Z_STRVAL_PP(domain));
while (talias) {
- strcat(tpath,":");
- strcat(tpath,talias);
- add_index_string(return_value,index++,tpath,1);
+ if (strcmp(ppath,tpath)) {
+ MAKE_STD_ZVAL(tarr);
+ if (array_init(tarr)!=SUCCESS) {
+ zend_error(E_ERROR,"unable to create array");
+ RETURN_FALSE;
+ }
+ add_assoc_zval(return_value,tpath,tarr);
+ strcpy(ppath,tpath);
+ }
+ add_next_index_string(tarr,talias,1);
talias=valias_select_all_next(tpath);
}
}