X-Git-Url: http://git.indexdata.com/?p=phpyaz-moved-to-github.git;a=blobdiff_plain;f=php_yaz.c;h=37127d88c6cf76feebd2592bc9c7865794fe1adb;hp=ea7189268ef6c60ca9026bcfeef747dec1f89f61;hb=e35064b7f872961b6a00ab55c97f6ea4d26ed027;hpb=86f031ab4c0ce57a28e515f2b7aaecde2a0b44c3 diff --git a/php_yaz.c b/php_yaz.c index ea71892..37127d8 100644 --- a/php_yaz.c +++ b/php_yaz.c @@ -2,12 +2,12 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2004 The PHP Group | + | Copyright (c) 1997-2011 The PHP Group | +----------------------------------------------------------------------+ - | This source file is subject to version 3.0 of the PHP license, | + | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_0.txt. | + | http://www.php.net/license/3_01.txt. | | If you did not receive a copy of the PHP license and are unable to | | obtain it through the world-wide-web, please send a note to | | license@php.net so we can mail you a copy immediately. | @@ -16,8 +16,6 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_yaz.c,v 1.115 2008/02/20 10:08:15 dickmeiss Exp $ */ - #ifdef HAVE_CONFIG_H #include "config.h" #endif @@ -56,6 +54,11 @@ #define MAX_ASSOC 200 +#define GET_PARM1(a) zend_parse_parameters(1 TSRMLS_CC , "z", a) +#define GET_PARM2(a,b) zend_parse_parameters(2 TSRMLS_CC, "zz", a, b) +#define GET_PARM3(a,b,c) zend_parse_parameters(3 TSRMLS_CC, "zzz", a, b, c) +#define GET_PARM4(a,b,c,d) zend_parse_parameters(4 TSRMLS_CC, "zzzz", a, b, c, d) + typedef struct Yaz_AssociationInfo *Yaz_Association; struct Yaz_AssociationInfo { @@ -74,9 +77,9 @@ struct Yaz_AssociationInfo { static Yaz_Association yaz_association_mk() { - Yaz_Association p = xmalloc (sizeof(*p)); + Yaz_Association p = xmalloc(sizeof(*p)); - p->zoom_conn = ZOOM_connection_create (0); + p->zoom_conn = ZOOM_connection_create(0); p->zoom_set = 0; p->zoom_scan = 0; p->zoom_package = 0; @@ -91,7 +94,7 @@ static Yaz_Association yaz_association_mk() return p; } -static void yaz_association_destroy (Yaz_Association p) +static void yaz_association_destroy(Yaz_Association p) { if (!p) { return; @@ -145,7 +148,7 @@ static unsigned char third_argument_force_ref[] = { #endif -function_entry yaz_functions [] = { +zend_function_entry yaz_functions [] = { PHP_FE(yaz_connect, NULL) PHP_FE(yaz_close, NULL) PHP_FE(yaz_search, NULL) @@ -174,13 +177,13 @@ function_entry yaz_functions [] = { {NULL, NULL, NULL} }; -static void get_assoc(INTERNAL_FUNCTION_PARAMETERS, pval *id, Yaz_Association *assocp) +static void get_assoc(INTERNAL_FUNCTION_PARAMETERS, zval *id, Yaz_Association *assocp) { Yaz_Association *as = 0; *assocp = 0; #ifdef ZTS - tsrm_mutex_lock (yaz_mutex); + tsrm_mutex_lock(yaz_mutex); #endif ZEND_FETCH_RESOURCE(as, Yaz_Association *, &id, -1, "YAZ link", le_link); @@ -189,7 +192,7 @@ static void get_assoc(INTERNAL_FUNCTION_PARAMETERS, pval *id, Yaz_Association *a *assocp = *as; } else { #ifdef ZTS - tsrm_mutex_unlock (yaz_mutex); + tsrm_mutex_unlock(yaz_mutex); #endif php_error_docref(NULL TSRMLS_CC, E_WARNING, "Invalid YAZ handle"); } @@ -206,7 +209,7 @@ static void release_assoc(Yaz_Association assoc) static const char *array_lookup_string(HashTable *ht, const char *idx) { - pval **pvalue; + zval **pvalue; if (ht && zend_hash_find(ht, (char *) idx, strlen(idx) + 1, (void **) &pvalue) == SUCCESS) { SEPARATE_ZVAL(pvalue); @@ -218,7 +221,7 @@ static const char *array_lookup_string(HashTable *ht, const char *idx) static long *array_lookup_long(HashTable *ht, const char *idx) { - pval **pvalue; + zval **pvalue; if (ht && zend_hash_find(ht, (char *) idx, strlen(idx) + 1, (void **) &pvalue) == SUCCESS) { SEPARATE_ZVAL(pvalue); @@ -230,7 +233,7 @@ static long *array_lookup_long(HashTable *ht, const char *idx) static long *array_lookup_bool(HashTable *ht, const char *idx) { - pval **pvalue; + zval **pvalue; if (ht && zend_hash_find(ht, (char *) idx, strlen(idx) + 1, (void **) &pvalue) == SUCCESS) { SEPARATE_ZVAL(pvalue); @@ -273,7 +276,7 @@ static void option_set_int(Yaz_Association as, const char *name, int v) if (as) { char s[30]; - sprintf (s, "%d", v); + sprintf(s, "%d", v); ZOOM_connection_option_set(as->zoom_conn, name, s); } } @@ -306,20 +309,18 @@ PHP_FUNCTION(yaz_connect) const char *preferredMessageSize = 0; int persistent = 1; int piggyback = 1; - pval *zurl, *user = 0; + zval *zurl, *user = 0; Yaz_Association as; int max_links = YAZSG(max_links); otherInfo[0] = otherInfo[1] = otherInfo[2] = 0; if (ZEND_NUM_ARGS() == 1) { - if (zend_parse_parameters(1, "z", &zurl) - == FAILURE) { + if (GET_PARM1(&zurl) == FAILURE) { WRONG_PARAM_COUNT; } } else if (ZEND_NUM_ARGS() == 2) { - if (zend_parse_parameters(2, "zz", &zurl, &user) - == FAILURE) { + if (GET_PARM2(&zurl, &user) == FAILURE) { WRONG_PARAM_COUNT; } @@ -403,7 +404,7 @@ PHP_FUNCTION(yaz_connect) if (i == -1) { char msg[80]; #ifdef ZTS - tsrm_mutex_unlock (yaz_mutex); + tsrm_mutex_unlock(yaz_mutex); #endif sprintf(msg, "No YAZ handles available. max_links=%d", max_links); @@ -415,7 +416,7 @@ PHP_FUNCTION(yaz_connect) yaz_association_destroy(shared_associations[i]); } } - shared_associations[i] = as = yaz_association_mk (); + shared_associations[i] = as = yaz_association_mk(); option_set(as, "proxy", proxy_str); option_set(as, "sru", sru_str); @@ -449,7 +450,7 @@ PHP_FUNCTION(yaz_connect) as->zoom_set = 0; } #ifdef ZTS - tsrm_mutex_unlock (yaz_mutex); + tsrm_mutex_unlock(yaz_mutex); #endif ZEND_REGISTER_RESOURCE(return_value, &shared_associations[i], le_link); @@ -462,12 +463,12 @@ PHP_FUNCTION(yaz_connect) PHP_FUNCTION(yaz_close) { Yaz_Association p; - pval *id; + zval *id; if (ZEND_NUM_ARGS() != 1) { WRONG_PARAM_COUNT; } - if (zend_parse_parameters(1, "z", &id) == FAILURE) { + if (GET_PARM1(&id) == FAILURE) { RETURN_FALSE; } get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, id, &p); @@ -486,12 +487,11 @@ PHP_FUNCTION(yaz_close) PHP_FUNCTION(yaz_search) { char *query_str, *type_str; - pval *id, *type, *query; + zval *id, *type, *query; Yaz_Association p; if (ZEND_NUM_ARGS() == 3) { - if (zend_parse_parameters(3, "zzz", &id, &type, &query) - == FAILURE) { + if (GET_PARM3(&id, &type, &query) == FAILURE) { WRONG_PARAM_COUNT; } } else { @@ -534,7 +534,7 @@ PHP_FUNCTION(yaz_search) if (p->sort_criteria) { ZOOM_query_sortby(q, p->sort_criteria); } - xfree (p->sort_criteria); + xfree(p->sort_criteria); p->sort_criteria = 0; p->zoom_set = ZOOM_connection_search(p->zoom_conn, q); RETVAL_TRUE; @@ -554,13 +554,13 @@ PHP_FUNCTION(yaz_search) Retrieve records */ PHP_FUNCTION(yaz_present) { - pval *id; + zval *id; Yaz_Association p; if (ZEND_NUM_ARGS() != 1) { WRONG_PARAM_COUNT; } - if (zend_parse_parameters(1, "z", id) == FAILURE) { + if (GET_PARM1(&id) == FAILURE) { WRONG_PARAM_COUNT; } @@ -585,7 +585,7 @@ PHP_FUNCTION(yaz_present) Process events. */ PHP_FUNCTION(yaz_wait) { - pval *pval_options = 0; + zval *pval_options = 0; int event_mode = 0; int no = 0; ZOOM_connection conn_ar[MAX_ASSOC]; @@ -596,7 +596,7 @@ PHP_FUNCTION(yaz_wait) long *val = 0; long *event_bool = 0; HashTable *options_ht = 0; - if (zend_parse_parameters(1, "z", &pval_options) == FAILURE) { + if (GET_PARM1(&pval_options) == FAILURE) { WRONG_PARAM_COUNT; } if (Z_TYPE_PP(&pval_options) != IS_ARRAY) { @@ -649,7 +649,7 @@ PHP_FUNCTION(yaz_wait) } if (no) { - while (ZOOM_event (no, conn_ar)) + while (ZOOM_event(no, conn_ar)) ; } RETURN_TRUE; @@ -660,11 +660,10 @@ PHP_FUNCTION(yaz_wait) Return last error number (>0 for bib-1 diagnostic, <0 for other error, 0 for no error */ PHP_FUNCTION(yaz_errno) { - pval *id; + zval *id; Yaz_Association p; - if (ZEND_NUM_ARGS() != 1 || - zend_parse_parameters(1, "z", &id) == FAILURE) { + if (ZEND_NUM_ARGS() != 1 || GET_PARM1(&id) == FAILURE) { WRONG_PARAM_COUNT; } get_assoc(INTERNAL_FUNCTION_PARAM_PASSTHRU, id, &p); @@ -680,11 +679,10 @@ PHP_FUNCTION(yaz_errno) Return last error message */ PHP_FUNCTION(yaz_error) { - pval *id; + zval *id; Yaz_Association p; - if (ZEND_NUM_ARGS() != 1 || - zend_parse_parameters(1, "z", &id) == FAILURE) { + if (ZEND_NUM_ARGS() != 1 || GET_PARM1(&id) == FAILURE) { WRONG_PARAM_COUNT; } @@ -708,11 +706,10 @@ PHP_FUNCTION(yaz_error) Return additional info for last error (empty string if none) */ PHP_FUNCTION(yaz_addinfo) { - pval *id; + zval *id; Yaz_Association p; - if (ZEND_NUM_ARGS() != 1 || - zend_parse_parameters(ZEND_NUM_ARGS(), "z", &id) == FAILURE) { + if (ZEND_NUM_ARGS() != 1 || GET_PARM1(&id) == FAILURE) { WRONG_PARAM_COUNT; } @@ -732,15 +729,15 @@ PHP_FUNCTION(yaz_addinfo) Return number of hits (result count) for last search */ PHP_FUNCTION(yaz_hits) { - pval *id, *searchresult = 0; + zval *id, *searchresult = 0; Yaz_Association p; if (ZEND_NUM_ARGS() == 1) { - if (zend_parse_parameters(1, "z", &id) == FAILURE) { + if (GET_PARM1(&id) == FAILURE) { WRONG_PARAM_COUNT; } } else if (ZEND_NUM_ARGS() == 2) { - if (zend_parse_parameters(2, "zz", &id, &searchresult) == FAILURE) { + if (GET_PARM2(&id, &searchresult) == FAILURE) { WRONG_PARAM_COUNT; } if (array_init(searchresult) == FAILURE) { @@ -831,8 +828,8 @@ static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o) int length_starting; int length_implementation; int max_elements = 256; - Z_GenericRecord *r = odr_malloc (o, sizeof(*r)); - r->elements = odr_malloc (o, sizeof(*r->elements) * max_elements); + Z_GenericRecord *r = odr_malloc(o, sizeof(*r)); + r->elements = odr_malloc(o, sizeof(*r->elements) * max_elements); r->num_elements = 0; record_length = atoi_n(buf, 5); @@ -862,7 +859,7 @@ static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o) tag->tagOccurrence = 0; tag->metaData = 0; tag->appliedVariant = 0; - tag->tagValue = odr_malloc (o, sizeof(*tag->tagValue)); + tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue)); tag->tagValue->which = Z_StringOrNumeric_string; tag->tagValue->u.string = odr_strdup(o, "leader"); @@ -897,7 +894,7 @@ static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o) tag->tagOccurrence = 0; tag->metaData = 0; tag->appliedVariant = 0; - tag->tagValue = odr_malloc (o, sizeof(*tag->tagValue)); + tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue)); tag->tagValue->which = Z_StringOrNumeric_string; tag->tagValue->u.string = odr_strdup(o, tag_str); @@ -930,7 +927,7 @@ static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o) if (buf[i + indicator_length] != ISO2709_IDFS) { identifier_flag = 0; } - } else if (!memcmp (tag_str, "00", 2)) { + } else if (!memcmp(tag_str, "00", 2)) { identifier_flag = 0; } @@ -951,7 +948,7 @@ static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o) int i0; /* prepare tag */ Z_TaggedElement *parent_tag = tag; - Z_TaggedElement *tag = odr_malloc (o, sizeof(*tag)); + Z_TaggedElement *tag = odr_malloc(o, sizeof(*tag)); if (parent_tag->content->u.subtree->num_elements < 256) { parent_tag->content->u.subtree->elements[ @@ -963,7 +960,7 @@ static Z_GenericRecord *marc_to_grs1(const char *buf, ODR o) tag->tagOccurrence = 0; tag->metaData = 0; tag->appliedVariant = 0; - tag->tagValue = odr_malloc (o, sizeof(*tag->tagValue)); + tag->tagValue = odr_malloc(o, sizeof(*tag->tagValue)); tag->tagValue->which = Z_StringOrNumeric_string; /* sub field */ @@ -1194,12 +1191,12 @@ static void retval_array2_grs1(zval *return_value, Z_GenericRecord *p, array_init(zval_element); if (e->tagType) - add_assoc_long(zval_element, "tagType", *e->tagType); + add_assoc_long(zval_element, "tagType", (long) *e->tagType); if (e->tagValue->which == Z_StringOrNumeric_string) add_assoc_string(zval_element, "tag", e->tagValue->u.string, 1); else if (e->tagValue->which == Z_StringOrNumeric_numeric) - add_assoc_long(zval_element, "tag", *e->tagValue->u.numeric); + add_assoc_long(zval_element, "tag", (long) *e->tagValue->u.numeric); switch (e->content->which) { case Z_ElementData_string: @@ -1210,7 +1207,7 @@ static void retval_array2_grs1(zval *return_value, Z_GenericRecord *p, } break; case Z_ElementData_numeric: - add_assoc_long(zval_element, "content",*e->content->u.numeric); + add_assoc_long(zval_element, "content", (long) *e->content->u.numeric); break; case Z_ElementData_trueOrFalse: add_assoc_bool(zval_element, "content",*e->content->u.trueOrFalse); @@ -1251,14 +1248,14 @@ static void retval_array1_grs1(zval *return_value, Z_GenericRecord *p, } *tag = '\0'; for (i = 0; i <= level; i++) { - int tag_type = 3; + long tag_type = 3; e = grs[i]->elements[eno[i]]; if (e->tagType) { - tag_type = *e->tagType; + tag_type = (long) *e->tagType; } taglen = strlen(tag); - sprintf(tag + taglen, "(%d,", tag_type); + sprintf(tag + taglen, "(%ld,", tag_type); taglen = strlen(tag); if (e->tagValue->which == Z_StringOrNumeric_string) { @@ -1288,7 +1285,7 @@ static void retval_array1_grs1(zval *return_value, Z_GenericRecord *p, } break; case Z_ElementData_numeric: - add_next_index_long(my_zval, *e->content->u.numeric); + add_next_index_long(my_zval, (long) *e->content->u.numeric); break; case Z_ElementData_trueOrFalse: add_next_index_long(my_zval, *e->content->u.trueOrFalse); @@ -1342,7 +1339,7 @@ static void ext_grs1(zval *return_value, char type_args[][60], Return record information at given result set position */ PHP_FUNCTION(yaz_record) { - pval *pval_id, *pval_pos, *pval_type; + zval *pval_id, *pval_pos, *pval_type; Yaz_Association p; int pos; char *type; @@ -1350,8 +1347,7 @@ PHP_FUNCTION(yaz_record) if (ZEND_NUM_ARGS() != 3) { WRONG_PARAM_COUNT; } - if (zend_parse_parameters(3, "zzz", &pval_id, &pval_pos, &pval_type) - == FAILURE) { + if (GET_PARM3( &pval_id, &pval_pos, &pval_type) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1402,7 +1398,7 @@ PHP_FUNCTION(yaz_record) } } } - release_assoc (p); + release_assoc(p); } /* }}} */ @@ -1410,11 +1406,11 @@ PHP_FUNCTION(yaz_record) Set record syntax for retrieval */ PHP_FUNCTION(yaz_syntax) { - pval *pval_id, *pval_syntax; + zval *pval_id, *pval_syntax; Yaz_Association p; if (ZEND_NUM_ARGS() != 2 || - zend_parse_parameters(2, "zz", &pval_id, &pval_syntax) == FAILURE) { + GET_PARM2(&pval_id, &pval_syntax) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1429,11 +1425,11 @@ PHP_FUNCTION(yaz_syntax) Set Element-Set-Name for retrieval */ PHP_FUNCTION(yaz_element) { - pval *pval_id, *pval_element; + zval *pval_id, *pval_element; Yaz_Association p; if (ZEND_NUM_ARGS() != 2 || - zend_parse_parameters(2, "zz", &pval_id, &pval_element) == FAILURE) { + GET_PARM2(&pval_id, &pval_element) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1449,11 +1445,11 @@ PHP_FUNCTION(yaz_element) Set Schema for retrieval */ PHP_FUNCTION(yaz_schema) { - pval *pval_id, *pval_element; + zval *pval_id, *pval_element; Yaz_Association p; if (ZEND_NUM_ARGS() != 2 || - zend_parse_parameters(2, "zz", &pval_id, &pval_element) == FAILURE) { + GET_PARM2(&pval_id, &pval_element) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1468,11 +1464,11 @@ PHP_FUNCTION(yaz_schema) Set Option(s) for connection */ PHP_FUNCTION(yaz_set_option) { - pval *pval_ar, *pval_name, *pval_val, *pval_id; + zval *pval_ar, *pval_name, *pval_val, *pval_id; Yaz_Association p; if (ZEND_NUM_ARGS() == 2) { - if (zend_parse_parameters(2, "zz", &pval_id, &pval_ar) == FAILURE) { + if (GET_PARM2(&pval_id, &pval_ar) == FAILURE) { WRONG_PARAM_COUNT; } if (Z_TYPE_PP(&pval_ar) != IS_ARRAY) { @@ -1501,11 +1497,10 @@ PHP_FUNCTION(yaz_set_option) } option_set(p, key, (*ent)->value.str.val); } - release_assoc (p); + release_assoc(p); } } else if (ZEND_NUM_ARGS() == 3) { - if (zend_parse_parameters(3, "zzz", &pval_id, &pval_name, &pval_val) - == FAILURE) { + if (GET_PARM3( &pval_id, &pval_name, &pval_val) == FAILURE) { WRONG_PARAM_COUNT; } get_assoc (INTERNAL_FUNCTION_PARAM_PASSTHRU, pval_id, &p); @@ -1524,13 +1519,13 @@ PHP_FUNCTION(yaz_set_option) Set Option(s) for connection */ PHP_FUNCTION(yaz_get_option) { - pval *pval_id, *pval_name; + zval *pval_id, *pval_name; Yaz_Association p; if (ZEND_NUM_ARGS() != 2) { WRONG_PARAM_COUNT; } - if (zend_parse_parameters(2, "zz", &pval_id, &pval_name) == FAILURE) { + if (GET_PARM2(&pval_id, &pval_name) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1558,12 +1553,11 @@ PHP_FUNCTION(yaz_get_option) Set result set start point and number of records to request */ PHP_FUNCTION(yaz_range) { - pval *pval_id, *pval_start, *pval_number; + zval *pval_id, *pval_start, *pval_number; Yaz_Association p; if (ZEND_NUM_ARGS() != 3 || - zend_parse_parameters(3, "zzz", &pval_id, &pval_start, &pval_number) - == FAILURE) { + GET_PARM3( &pval_id, &pval_start, &pval_number) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1580,11 +1574,11 @@ PHP_FUNCTION(yaz_range) Set result set sorting criteria */ PHP_FUNCTION(yaz_sort) { - pval *pval_id, *pval_criteria; + zval *pval_id, *pval_criteria; Yaz_Association p; if (ZEND_NUM_ARGS() != 2 || - zend_parse_parameters(2, "zz", &pval_id, &pval_criteria) == FAILURE) { + GET_PARM2(&pval_id, &pval_criteria) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1601,7 +1595,7 @@ PHP_FUNCTION(yaz_sort) } /* }}} */ -const char *ill_array_lookup (void *handle, const char *name) +const char *ill_array_lookup(void *handle, const char *name) { return array_lookup_string((HashTable *) handle, name); } @@ -1610,11 +1604,11 @@ const char *ill_array_lookup (void *handle, const char *name) Sends Item Order request */ PHP_FUNCTION(yaz_itemorder) { - pval *pval_id, *pval_package; + zval *pval_id, *pval_package; Yaz_Association p; if (ZEND_NUM_ARGS() != 2 || - zend_parse_parameters(2, "zz", &pval_id, &pval_package) == FAILURE) { + GET_PARM2(&pval_id, &pval_package) == FAILURE) { WRONG_PARAM_COUNT; } if (Z_TYPE_PP(&pval_package) != IS_ARRAY) { @@ -1632,7 +1626,7 @@ PHP_FUNCTION(yaz_itemorder) p->zoom_package = ZOOM_connection_package(p->zoom_conn, options); ZOOM_package_send(p->zoom_package, "itemorder"); ZOOM_options_set_callback(options, 0, 0); - ZOOM_options_destroy (options); + ZOOM_options_destroy(options); } release_assoc(p); } @@ -1642,12 +1636,11 @@ PHP_FUNCTION(yaz_itemorder) Sends Extended Services Request */ PHP_FUNCTION(yaz_es) { - pval *pval_id, *pval_type, *pval_package; + zval *pval_id, *pval_type, *pval_package; Yaz_Association p; if (ZEND_NUM_ARGS() != 3 || - zend_parse_parameters(3, "zzz", &pval_id, &pval_type, - &pval_package) == FAILURE) { + GET_PARM3( &pval_id, &pval_type, &pval_package) == FAILURE) { WRONG_PARAM_COUNT; } if (Z_TYPE_PP(&pval_type) != IS_STRING) { @@ -1670,7 +1663,7 @@ PHP_FUNCTION(yaz_es) p->zoom_package = ZOOM_connection_package(p->zoom_conn, options); ZOOM_package_send(p->zoom_package, pval_type->value.str.val); ZOOM_options_set_callback(options, 0, 0); - ZOOM_options_destroy (options); + ZOOM_options_destroy(options); } release_assoc(p); } @@ -1680,18 +1673,17 @@ PHP_FUNCTION(yaz_es) Sends Scan Request */ PHP_FUNCTION(yaz_scan) { - pval *pval_id, *pval_type, *pval_query, *pval_flags = 0; + zval *pval_id, *pval_type, *pval_query, *pval_flags = 0; HashTable *flags_ht = 0; Yaz_Association p; if (ZEND_NUM_ARGS() == 3) { - if (zend_parse_parameters(3, "zzz", &pval_id, &pval_type, &pval_query) - == FAILURE) { + if (GET_PARM3( &pval_id, &pval_type, &pval_query) == FAILURE) { WRONG_PARAM_COUNT; } } else if (ZEND_NUM_ARGS() == 4) { - if (zend_parse_parameters(4, "zzzz", &pval_id, &pval_type, - &pval_query, &pval_flags) == FAILURE) { + if (GET_PARM4(&pval_id, &pval_type, &pval_query, &pval_flags) + == FAILURE) { WRONG_PARAM_COUNT; } if (Z_TYPE_PP(&pval_flags) != IS_ARRAY) { @@ -1724,11 +1716,10 @@ PHP_FUNCTION(yaz_scan) Inspects Extended Services Result */ PHP_FUNCTION(yaz_es_result) { - pval *pval_id; + zval *pval_id; Yaz_Association p; - if (ZEND_NUM_ARGS() != 1 || - zend_parse_parameters(1, "z", &pval_id) == FAILURE) { + if (ZEND_NUM_ARGS() != 1 || GET_PARM1(&pval_id) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1756,15 +1747,15 @@ PHP_FUNCTION(yaz_es_result) Inspects Scan Result */ PHP_FUNCTION(yaz_scan_result) { - pval *pval_id, *pval_opt = 0; + zval *pval_id, *pval_opt = 0; Yaz_Association p; if (ZEND_NUM_ARGS() == 2) { - if (zend_parse_parameters(2, "zz", &pval_id, &pval_opt) == FAILURE) { + if (GET_PARM2(&pval_id, &pval_opt) == FAILURE) { WRONG_PARAM_COUNT; } } else if (ZEND_NUM_ARGS() == 1) { - if (zend_parse_parameters(1, "z", &pval_id) == FAILURE) { + if (GET_PARM1(&pval_id) == FAILURE) { WRONG_PARAM_COUNT; } } else { @@ -1843,11 +1834,11 @@ PHP_FUNCTION(yaz_scan_result) Configure CCL package */ PHP_FUNCTION(yaz_ccl_conf) { - pval *pval_id, *pval_package; + zval *pval_id, *pval_package; Yaz_Association p; if (ZEND_NUM_ARGS() != 2 || - zend_parse_parameters(2, "zz", &pval_id, &pval_package) == FAILURE) { + GET_PARM2(&pval_id, &pval_package) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1882,7 +1873,7 @@ PHP_FUNCTION(yaz_ccl_conf) ccl_qual_fitem(p->bibset, (*ent)->value.str.val, key); } } - release_assoc (p); + release_assoc(p); } /* }}} */ @@ -1890,11 +1881,10 @@ PHP_FUNCTION(yaz_ccl_conf) Parse a CCL query */ PHP_FUNCTION(yaz_ccl_parse) { - pval *pval_id, *pval_query, *pval_res = 0; + zval *pval_id, *pval_query, *pval_res = 0; Yaz_Association p; - if (ZEND_NUM_ARGS() != 3 || - zend_parse_parameters(3, "zzz", &pval_id, &pval_query, &pval_res) + if (ZEND_NUM_ARGS() != 3 || GET_PARM3( &pval_id, &pval_query, &pval_res) == FAILURE) { WRONG_PARAM_COUNT; } @@ -1974,11 +1964,11 @@ PHP_FUNCTION(yaz_ccl_parse) Specify the databases within a session */ PHP_FUNCTION(yaz_database) { - pval *pval_id, *pval_database; + zval *pval_id, *pval_database; Yaz_Association p; if (ZEND_NUM_ARGS() != 2 || - zend_parse_parameters(2, "zz", &pval_id, &pval_database) == FAILURE) { + GET_PARM2(&pval_id, &pval_database) == FAILURE) { WRONG_PARAM_COUNT; } @@ -2014,7 +2004,7 @@ static void yaz_close_session(Yaz_Association *as TSRMLS_DC) } } -static void yaz_close_link (zend_rsrc_list_entry *rsrc TSRMLS_DC) +static void yaz_close_link(zend_rsrc_list_entry *rsrc TSRMLS_DC) { Yaz_Association *as = (Yaz_Association *) rsrc->ptr; yaz_close_session(as TSRMLS_CC); @@ -2084,7 +2074,7 @@ PHP_MINIT_FUNCTION(yaz) else yaz_log_init_level(0); - le_link = zend_register_list_destructors_ex (yaz_close_link, 0, "YAZ link", module_number); + le_link = zend_register_list_destructors_ex(yaz_close_link, 0, "YAZ link", module_number); order_associations = 1; shared_associations = xmalloc(sizeof(*shared_associations) * MAX_ASSOC); @@ -2106,7 +2096,7 @@ PHP_MSHUTDOWN_FUNCTION(yaz) shared_associations = 0; } #ifdef ZTS - tsrm_mutex_free (yaz_mutex); + tsrm_mutex_free(yaz_mutex); #endif yaz_log_init_file(0);