com php-src: basic fixes to ext/interbase: ext/interbase/ibase _blobs.c ext/interbase/ibase_events.c ext/interbase /ibase_query.c
ext/interbase/ibase_service.c ext/in terbase/interbase.c ext/interbase/php_ibase_includes. h ext/interbase/php_ibase_udf.c
| From: | Anatol Belski | Date: | Tue, 17 Dec 2013 10:17:12 +0000 |
| Subject: | com php-src: basic fixes to ext/interbase: ext/interbase/ibase _blobs.c ext/interbase/ibase_events.c ext/interbase /ibase_query.c ext/interbase/ibase_service.c ext/in terbase/interbase.c ext/interbase/php_ibase_includes. h ext/interbase/php_ibase_udf.c |
||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-74477@lists.php.net to get a copy of this message | ||
Commit: 4cdcbeec7630e4825bebe86d672a553fcc20909d
Author: Anatol Belski <ab@php.net> Tue, 17 Dec 2013 11:17:12 +0100
Parents: 8aa7f84dd2911932e17ba589aea8503e24d308f8
Branches: str_size_and_int64
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=4cdcbeec7630e4825bebe86d672a553fcc20909d
Log:
basic fixes to ext/interbase
Changed paths:
M ext/interbase/ibase_blobs.c
M ext/interbase/ibase_events.c
M ext/interbase/ibase_query.c
M ext/interbase/ibase_service.c
M ext/interbase/interbase.c
M ext/interbase/php_ibase_includes.h
M ext/interbase/php_ibase_udf.c
diff --git a/ext/interbase/ibase_blobs.c b/ext/interbase/ibase_blobs.c index 9d9d2f8..f61e0a2 100644 --- a/ext/interbase/ibase_blobs.c +++ b/ext/interbase/ibase_blobs.c @@ -95,13 +95,13 @@ typedef struct { /* {{{ */ /* }}} */ } IBASE_BLOBINFO; -int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, unsigned long max_len TSRMLS_DC) /* {{{ */ +int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, php_uint_t max_len TSRMLS_DC) /* {{{ */ { if (ib_blob->bl_qd.gds_quad_high || ib_blob->bl_qd.gds_quad_low) { /*not null ?*/ ISC_STATUS stat; char *bl_data; - unsigned long cur_len; + php_uint_t cur_len; unsigned short seg_len; bl_data = safe_emalloc(1, max_len, 1); @@ -130,12 +130,12 @@ int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, unsigned long m int _php_ibase_blob_add(zval **string_arg, ibase_blob *ib_blob TSRMLS_DC) /* {{{ */ { - unsigned long put_cnt = 0, rem_cnt; + php_uint_t put_cnt = 0, rem_cnt; unsigned short chunk_size; convert_to_string_ex(string_arg); - for (rem_cnt = Z_STRLEN_PP(string_arg); rem_cnt > 0; rem_cnt -= chunk_size) { + for (rem_cnt = Z_STRSIZE_PP(string_arg); rem_cnt > 0; rem_cnt -= chunk_size) { chunk_size = rem_cnt > USHRT_MAX ? USHRT_MAX : (unsigned short)rem_cnt; @@ -238,7 +238,7 @@ PHP_FUNCTION(ibase_blob_create) PHP_FUNCTION(ibase_blob_open) { char *blob_id; - int blob_id_len; + zend_str_size_int blob_id_len; zval *link = NULL; ibase_db_link *ib_link; ibase_trans *trans = NULL; @@ -250,12 +250,12 @@ PHP_FUNCTION(ibase_blob_open) default: WRONG_PARAM_COUNT; case 1: - if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "s", &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "S", &blob_id, &blob_id_len)) { RETURN_FALSE; } break; case 2: - if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rs", &link, &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rS", &link, &blob_id, &blob_id_len)) { RETURN_FALSE; } break; @@ -400,7 +400,7 @@ PHP_FUNCTION(ibase_blob_cancel) PHP_FUNCTION(ibase_blob_info) { char *blob_id; - int blob_id_len; + zend_str_size_int blob_id_len; zval *link = NULL; ibase_db_link *ib_link; ibase_trans *trans = NULL; @@ -413,12 +413,12 @@ PHP_FUNCTION(ibase_blob_info) default: WRONG_PARAM_COUNT; case 1: - if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "s", &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "S", &blob_id, &blob_id_len)) { RETURN_FALSE; } break; case 2: - if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rs", &link, &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rS", &link, &blob_id, &blob_id_len)) { RETURN_FALSE; } break; @@ -476,7 +476,7 @@ PHP_FUNCTION(ibase_blob_info) PHP_FUNCTION(ibase_blob_echo) { char *blob_id; - int blob_id_len; + zend_str_size_int blob_id_len; zval *link = NULL; ibase_db_link *ib_link; ibase_trans *trans = NULL; @@ -490,12 +490,12 @@ PHP_FUNCTION(ibase_blob_echo) default: WRONG_PARAM_COUNT; case 1: - if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "s", &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "S", &blob_id, &blob_id_len)) { RETURN_FALSE; } break; case 2: - if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rs", &link, &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rS", &link, &blob_id, &blob_id_len)) { RETURN_FALSE; } break; diff --git a/ext/interbase/ibase_events.c b/ext/interbase/ibase_events.c index 3380def..0213647 100644 --- a/ext/interbase/ibase_events.c +++ b/ext/interbase/ibase_events.c @@ -93,7 +93,7 @@ static void _php_ibase_event_block(ibase_db_link *ib_link, unsigned short count, char **events, unsigned short *l, char **event_buf, char **result_buf) { ISC_STATUS dummy_result[20]; - unsigned long dummy_count[15]; + php_uint_t dummy_count[15]; /** * Unfortunately, there's no clean and portable way in C to pass arguments to @@ -131,7 +131,7 @@ PHP_FUNCTION(ibase_wait_event) int num_args; char *event_buffer, *result_buffer, *events[15]; unsigned short i = 0, event_count = 0, buffer_size; - unsigned long occurred_event[15]; + php_uint_t occurred_event[15]; RESET_ERRMSG; @@ -209,7 +209,7 @@ static isc_callback _php_ibase_callback(ibase_event *event, /* {{{ */ */ switch (event->state) { unsigned short i; - unsigned long occurred_event[15]; + php_uint_t occurred_event[15]; zval event_name, link_id, return_value, *args[2]; default: /* == DEAD */ diff --git a/ext/interbase/ibase_query.c b/ext/interbase/ibase_query.c index b30d741..196a45b 100644 --- a/ext/interbase/ibase_query.c +++ b/ext/interbase/ibase_query.c @@ -221,7 +221,7 @@ static int _php_ibase_alloc_array(ibase_array **ib_arrayp, XSQLDA *sqlda, /* {{{ for (i = n = 0; i < sqlda->sqld; ++i) { unsigned short dim; - unsigned long ar_size = 1; + php_uint_t ar_size = 1; XSQLVAR *var = &sqlda->sqlvar[i]; if ((var->sqltype & ~1) == SQL_ARRAY) { @@ -432,7 +432,7 @@ _php_ibase_alloc_query_error: } /* }}} */ -static int _php_ibase_bind_array(zval *val, char *buf, unsigned long buf_size, /* {{{ */ +static int _php_ibase_bind_array(zval *val, char *buf, php_uint_t buf_size, /* {{{ */ ibase_array *array, int dim TSRMLS_DC) { zval null_val, *pnull_val = &null_val; @@ -443,7 +443,7 @@ static int _php_ibase_bind_array(zval *val, char *buf, unsigned long buf_size, / ZVAL_NULL(pnull_val); if (dim < array->ar_desc.array_desc_dimensions) { - unsigned long slice_size = buf_size / dim_len; + php_uint_t slice_size = buf_size / dim_len; unsigned short i; zval **subval = &val; @@ -666,7 +666,7 @@ static int _php_ibase_bind(XSQLDA *sqlda, zval ***b_vars, BIND_BUF *buf, /* {{{ case SQL_TIMESTAMP: case SQL_TYPE_DATE: case SQL_TYPE_TIME: - force_null = (Z_STRLEN_P(b_var) == 0); + force_null = (Z_STRSIZE_P(b_var) == 0); } if (! force_null) break; @@ -736,7 +736,7 @@ static int _php_ibase_bind(XSQLDA *sqlda, zval ***b_vars, BIND_BUF *buf, /* {{{ convert_to_string(b_var); - if (Z_STRLEN_P(b_var) != BLOB_ID_LEN || + if (Z_STRSIZE_P(b_var) != BLOB_ID_LEN || !_php_ibase_string_to_quad(Z_STRVAL_P(b_var), &buf[i].val.qval)) { ibase_blob ib_blob = { NULL, BLOB_INPUT }; @@ -764,7 +764,7 @@ static int _php_ibase_bind(XSQLDA *sqlda, zval ***b_vars, BIND_BUF *buf, /* {{{ if (Z_TYPE_P(b_var) != IS_ARRAY) { convert_to_string(b_var); - if (Z_STRLEN_P(b_var) != BLOB_ID_LEN || + if (Z_STRSIZE_P(b_var) != BLOB_ID_LEN || !_php_ibase_string_to_quad(Z_STRVAL_P(b_var), &buf[i].val.qval)) { _php_ibase_module_error("Parameter %d: invalid array ID" TSRMLS_CC,i+1); @@ -801,7 +801,7 @@ static int _php_ibase_bind(XSQLDA *sqlda, zval ***b_vars, BIND_BUF *buf, /* {{{ /* we end up here if none of the switch cases handled the field */ convert_to_string(b_var); var->sqldata = Z_STRVAL_P(b_var); - var->sqllen = Z_STRLEN_P(b_var); + var->sqllen = Z_STRSIZE_P(b_var); var->sqltype = SQL_TEXT; } /* for */ return rv; @@ -991,7 +991,7 @@ static int _php_ibase_exec(INTERNAL_FUNCTION_PARAMETERS, ibase_result **ib_resul switch (ib_query->statement_type) { - unsigned long affected_rows; + php_uint_t affected_rows; case isc_info_sql_stmt_insert: case isc_info_sql_stmt_update: @@ -1062,8 +1062,9 @@ PHP_FUNCTION(ibase_query) { zval *zlink, *ztrans, ***bind_args = NULL; char *query; - int bind_i, query_len, bind_num; - long trans_res_id = 0; + int bind_i, bind_num; + zend_str_size_int query_len; + php_int_t trans_res_id = 0; ibase_db_link *ib_link = NULL; ibase_trans *trans = NULL; ibase_query ib_query = { NULL, NULL, 0, 0 }; @@ -1074,10 +1075,10 @@ PHP_FUNCTION(ibase_query) RETVAL_FALSE; switch (ZEND_NUM_ARGS()) { - long l; + php_int_t l; default: - if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, 3 TSRMLS_CC, "rrs", + if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, 3 TSRMLS_CC, "rrS", &zlink, &ztrans, &query, &query_len)) { ZEND_FETCH_RESOURCE2(ib_link, ibase_db_link*, &zlink, -1, LE_LINK, le_link, le_plink); @@ -1088,7 +1089,7 @@ PHP_FUNCTION(ibase_query) break; } case 2: - if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, 2 TSRMLS_CC, "rs", + if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, 2 TSRMLS_CC, "rS", &zlink, &query, &query_len)) { _php_ibase_get_link_trans(INTERNAL_FUNCTION_PARAM_PASSTHRU, &zlink, &ib_link, &trans); @@ -1101,7 +1102,7 @@ PHP_FUNCTION(ibase_query) /* the statement is 'CREATE DATABASE ...' if the link argument is IBASE_CREATE */ if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() - TSRMLS_CC, "ls", &l, &query, &query_len) && l == PHP_IBASE_CREATE) { + TSRMLS_CC, "iS", &l, &query, &query_len) && l == PHP_IBASE_CREATE) { isc_db_handle db = NULL; isc_tr_handle trans = NULL; @@ -1140,7 +1141,7 @@ PHP_FUNCTION(ibase_query) } case 1: case 0: - if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() ? 1 : 0 TSRMLS_CC, "s", &query, + if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() ? 1 : 0 TSRMLS_CC, "S", &query, &query_len)) { ZEND_FETCH_RESOURCE2(ib_link, ibase_db_link *, NULL, IBG(default_link), LE_LINK, le_link, le_plink); @@ -1424,7 +1425,7 @@ format_date_time: } /* }}} */ -static int _php_ibase_arr_zval(zval *ar_zval, char *data, unsigned long data_size, /* {{{ */ +static int _php_ibase_arr_zval(zval *ar_zval, char *data, php_uint_t data_size, /* {{{ */ ibase_array *ib_array, int dim, int flag TSRMLS_DC) { /** @@ -1437,7 +1438,7 @@ static int _php_ibase_arr_zval(zval *ar_zval, char *data, unsigned long data_siz unsigned short i; if (dim < ib_array->ar_desc.array_desc_dimensions) { /* array again */ - unsigned long slice_size = data_size / dim_len; + php_uint_t slice_size = data_size / dim_len; array_init(ar_zval); @@ -1466,7 +1467,7 @@ static int _php_ibase_arr_zval(zval *ar_zval, char *data, unsigned long data_siz if (ib_array->ar_desc.array_desc_dtype == blr_varying || ib_array->ar_desc.array_desc_dtype == blr_varying2) { - Z_STRLEN_P(ar_zval) = strlen(Z_STRVAL_P(ar_zval)); + Z_STRSIZE_P(ar_zval) = strlen(Z_STRVAL_P(ar_zval)); } } return SUCCESS; @@ -1476,12 +1477,12 @@ static int _php_ibase_arr_zval(zval *ar_zval, char *data, unsigned long data_siz static void _php_ibase_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int fetch_type) /* {{{ */ { zval *result_arg; - long i, array_cnt = 0, flag = 0; + php_int_t i, array_cnt = 0, flag = 0; ibase_result *ib_result; RESET_ERRMSG; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r|l", &result_arg, &flag)) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r|i", &result_arg, &flag)) { return; } @@ -1547,7 +1548,7 @@ static void _php_ibase_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int fetch_type) if (flag & PHP_IBASE_FETCH_BLOBS) { /* fetch blob contents into hash */ ibase_blob blob_handle; - unsigned long max_len = 0; + php_uint_t max_len = 0; static char bl_items[] = {isc_info_blob_total_length}; char bl_info[20]; unsigned short i; @@ -1689,12 +1690,12 @@ PHP_FUNCTION(ibase_name_result) { zval *result_arg; char *name_arg; - int name_arg_len; + zend_str_size_int name_arg_len; ibase_result *ib_result; RESET_ERRMSG; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &result_arg, &name_arg, &name_arg_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rS", &result_arg, &name_arg, &name_arg_len) == FAILURE) { return; } @@ -1735,19 +1736,20 @@ PHP_FUNCTION(ibase_prepare) zval *link_arg, *trans_arg; ibase_db_link *ib_link; ibase_trans *trans = NULL; - int query_len, trans_res_id = 0; + zend_str_size_int query_len; + int trans_res_id = 0; ibase_query *ib_query; char *query; RESET_ERRMSG; if (ZEND_NUM_ARGS() == 1) { - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &query, &query_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S", &query, &query_len) == FAILURE) { return; } ZEND_FETCH_RESOURCE2(ib_link, ibase_db_link *, NULL, IBG(default_link), LE_LINK, le_link, le_plink); } else if (ZEND_NUM_ARGS() == 2) { - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &link_arg, &query, &query_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rS", &link_arg, &query, &query_len) == FAILURE) { return; } _php_ibase_get_link_trans(INTERNAL_FUNCTION_PARAM_PASSTHRU, &link_arg, &ib_link, &trans); @@ -1756,7 +1758,7 @@ PHP_FUNCTION(ibase_prepare) trans_res_id = Z_RESVAL_P(link_arg); } } else { - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rrs", &link_arg, &trans_arg, &query, &query_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rrS", &link_arg, &trans_arg, &query, &query_len) == FAILURE) { return; } ZEND_FETCH_RESOURCE2(ib_link, ibase_db_link *, &link_arg, -1, LE_LINK, le_link, le_plink); @@ -2003,13 +2005,13 @@ static void _php_ibase_field_info(zval *return_value, XSQLVAR *var) /* {{{ */ PHP_FUNCTION(ibase_field_info) { zval *result_arg; - long field_arg; + php_int_t field_arg; int type; XSQLDA *sqlda; RESET_ERRMSG; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &result_arg, &field_arg) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ri", &result_arg, &field_arg) == FAILURE) { return; } @@ -2067,12 +2069,12 @@ PHP_FUNCTION(ibase_num_params) PHP_FUNCTION(ibase_param_info) { zval *result_arg; - long field_arg; + php_int_t field_arg; ibase_query *ib_query; RESET_ERRMSG; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &result_arg, &field_arg) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ri", &result_arg, &field_arg) == FAILURE) { return; } diff --git a/ext/interbase/ibase_service.c b/ext/interbase/ibase_service.c index 956ef04..a8e26c2 100644 --- a/ext/interbase/ibase_service.c +++ b/ext/interbase/ibase_service.c @@ -33,7 +33,7 @@ typedef struct { isc_svc_handle handle; char *hostname; char *username; - long res_id; + php_int_t res_id; } ibase_service; static int le_service; @@ -139,7 +139,8 @@ static void _php_ibase_user(INTERNAL_FUNCTION_PARAMETERS, char operation) /* {{{ static char const user_flags[] = { isc_spb_sec_username, isc_spb_sec_password, isc_spb_sec_firstname, isc_spb_sec_middlename, isc_spb_sec_lastname }; char buf[128], *args[] = { NULL, NULL, NULL, NULL, NULL }; - int i, args_len[] = { 0, 0, 0, 0, 0 }; + int i; + zend_str_size_int args_len[] = { 0, 0, 0, 0, 0 }; unsigned short spb_len = 1; zval *res; ibase_service *svm; @@ -147,7 +148,7 @@ static void _php_ibase_user(INTERNAL_FUNCTION_PARAMETERS, char operation) /* {{{ RESET_ERRMSG; if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, - (operation == isc_action_svc_delete_user) ? "rs" : "rss|sss", + (operation == isc_action_svc_delete_user) ? "rS" : "rSS|SSS", &res, &args[0], &args_len[0], &args[1], &args_len[1], &args[2], &args_len[2], &args[3], &args_len[3], &args[4], &args_len[4])) { RETURN_FALSE; @@ -210,14 +211,15 @@ PHP_FUNCTION(ibase_delete_user) Connect to the service manager */ PHP_FUNCTION(ibase_service_attach) { - int hlen, ulen, plen, spb_len; + zend_str_size_int hlen, ulen, plen; + int spb_len; ibase_service *svm; char buf[128], *host, *user, *pass, *loc; isc_svc_handle handle = NULL; RESET_ERRMSG; - if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sss", + if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "SSS", &host, &hlen, &user, &ulen, &pass, &plen)) { RETURN_FALSE; @@ -276,7 +278,7 @@ static void _php_ibase_service_query(INTERNAL_FUNCTION_PARAMETERS, /* {{{ */ static char spb[] = { isc_info_svc_timeout, 10, 0, 0, 0 }; char res_buf[400], *result, *heap_buf = NULL, *heap_p; - long heap_buf_size = 200, line_len; + php_int_t heap_buf_size = 200, line_len; /* info about users requires an action first */ if (info_action == isc_info_svc_get_users) { @@ -312,7 +314,7 @@ query_loop: } } if (!heap_buf || (heap_p - heap_buf + line_len +2) > heap_buf_size) { - long res_size = heap_buf ? heap_p - heap_buf : 0; + php_int_t res_size = heap_buf ? heap_p - heap_buf : 0; while (heap_buf_size < (res_size + line_len +2)) { heap_buf_size *= 2; @@ -425,14 +427,15 @@ static void _php_ibase_backup_restore(INTERNAL_FUNCTION_PARAMETERS, char operati */ zval *res; char *db, *bk, buf[200]; - int dblen, bklen, spb_len; - long opts = 0; + zend_str_size_int dblen, bklen; + int spb_len; + php_int_t opts = 0; zend_bool verbose = 0; ibase_service *svm; RESET_ERRMSG; - if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rss|lb", + if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rSS|ib", &res, &db, &dblen, &bk, &bklen, &opts, &verbose)) { RETURN_FALSE; } @@ -489,13 +492,14 @@ static void _php_ibase_service_action(INTERNAL_FUNCTION_PARAMETERS, char svc_act { zval *res; char buf[128], *db; - int dblen, spb_len; - long action, argument = 0; + zend_str_size_int dblen; + int spb_len; + php_int_t action, argument = 0; ibase_service *svm; RESET_ERRMSG; - if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rsl|l", + if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rSi|i", &res, &db, &dblen, &action, &argument)) { RETURN_FALSE; } @@ -597,12 +601,12 @@ PHP_FUNCTION(ibase_db_info) PHP_FUNCTION(ibase_server_info) { zval *res; - long action; + php_int_t action; ibase_service *svm; RESET_ERRMSG; - if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &res, &action)) { + if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ri", &res, &action)) { RETURN_FALSE; } diff --git a/ext/interbase/interbase.c b/ext/interbase/interbase.c index 132ad35..3fd58a6 100644 --- a/ext/interbase/interbase.c +++ b/ext/interbase/interbase.c @@ -544,7 +544,7 @@ void _php_ibase_module_error(char *msg TSRMLS_DC, ...) /* {{{ */ /* {{{ internal macros, functions and structures */ typedef struct { isc_db_handle *db_ptr; - long tpb_len; + php_int_t tpb_len; char *tpb_ptr; } ISC_TEB; @@ -859,7 +859,7 @@ static char const dpb_args[] = { 0, isc_dpb_user_name, isc_dpb_password, isc_dpb_lc_ctype, isc_dpb_sql_role_name, 0 }; -int _php_ibase_attach_db(char **args, int *len, long *largs, isc_db_handle *db TSRMLS_DC) +int _php_ibase_attach_db(char **args, int *len, php_int_t *largs, isc_db_handle *db TSRMLS_DC) { short i, dpb_len, buf_len = 257-2; /* version byte at the front, and a null at the end */ char dpb_buffer[257] = { isc_dpb_version1, 0 }, *dpb; @@ -895,8 +895,9 @@ int _php_ibase_attach_db(char **args, int *len, long *largs, isc_db_handle *db T static void _php_ibase_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* {{{ */ { char *c, hash[16], *args[] = { NULL, NULL, NULL, NULL, NULL }; - int i, len[] = { 0, 0, 0, 0, 0 }; - long largs[] = { 0, 0, 0 }; + int i; + zend_str_size_int len[] = { 0, 0, 0, 0, 0 }; + php_int_t largs[] = { 0, 0, 0 }; PHP_MD5_CTX hash_context; zend_rsrc_list_entry new_index_ptr, *le; isc_db_handle db_handle = NULL; @@ -904,7 +905,7 @@ static void _php_ibase_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* RESET_ERRMSG; - if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|ssssllsl", + if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|SSSSiiSi", &args[DB], &len[DB], &args[USER], &len[USER], &args[PASS], &len[PASS], &args[CSET], &len[CSET], &largs[BUF], &largs[DLECT], &args[ROLE], &len[ROLE], &largs[SYNC])) { @@ -941,7 +942,7 @@ static void _php_ibase_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* /* try to reuse a connection */ if (SUCCESS == zend_hash_find(&EG(regular_list), hash, sizeof(hash), (void *) &le)) { - long xlink; + php_int_t xlink; int type; if (Z_TYPE_P(le) != le_index_ptr) { @@ -959,7 +960,7 @@ static void _php_ibase_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* /* ... or a persistent one */ switch (zend_hash_find(&EG(persistent_list), hash, sizeof(hash), (void *) &le)) { - long l; + php_int_t l; static char info[] = { isc_info_base_level, isc_info_end }; char result[8]; @@ -1141,7 +1142,7 @@ PHP_FUNCTION(ibase_trans) ib_link = (ibase_db_link **) safe_emalloc(sizeof(ibase_db_link *),1+argn,0); if (argn > 0) { - long trans_argl = 0; + php_int_t trans_argl = 0; char *tpb; ISC_TEB *teb; zval ***args = NULL; @@ -1415,8 +1416,8 @@ PHP_FUNCTION(ibase_gen_id) { zval *link = NULL; char query[128], *generator; - int gen_len; - long inc = 1; + zend_str_size_int gen_len; + php_int_t inc = 1; ibase_db_link *ib_link; ibase_trans *trans = NULL; XSQLDA out_sqlda; @@ -1424,7 +1425,7 @@ PHP_FUNCTION(ibase_gen_id) RESET_ERRMSG; - if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|lr", &generator, &gen_len, + if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S|ir", &generator, &gen_len, &inc, &link)) { RETURN_FALSE; } @@ -1456,8 +1457,8 @@ PHP_FUNCTION(ibase_gen_id) } /* don't return the generator value as a string unless it doesn't fit in a long */ -#if SIZEOF_LONG < 8 - if (result < LONG_MIN || result > LONG_MAX) { +#if SIZEOF_ZEND_INT < 8 + if (result < PHP_INT_MIN || result > PHP_INT_MAX) { char *res; int l; diff --git a/ext/interbase/php_ibase_includes.h b/ext/interbase/php_ibase_includes.h index 559be77..11e0027 100644 --- a/ext/interbase/php_ibase_includes.h +++ b/ext/interbase/php_ibase_includes.h @@ -62,10 +62,10 @@ extern int le_link, le_plink, le_trans; ZEND_BEGIN_MODULE_GLOBALS(ibase) ISC_STATUS status[20]; - long default_link; - long num_links, num_persistent; + php_int_t default_link; + php_int_t num_links, num_persistent; char errmsg[MAX_ERRMSG]; - long sql_code; + php_int_t sql_code; ZEND_END_MODULE_GLOBALS(ibase) ZEND_EXTERN_MODULE_GLOBALS(ibase) @@ -80,7 +80,7 @@ typedef struct { typedef struct { isc_tr_handle handle; unsigned short link_cnt; - unsigned long affected_rows; + php_uint_t affected_rows; ibase_db_link *db_link[1]; /* last member */ } ibase_trans; @@ -97,7 +97,7 @@ typedef struct { typedef struct event { ibase_db_link *link; - long link_res_id; + php_int_t link_res_id; ISC_LONG event_id; unsigned short event_count; char **events; @@ -176,7 +176,7 @@ void php_ibase_query_minit(INIT_FUNC_ARGS); void php_ibase_blobs_minit(INIT_FUNC_ARGS); int _php_ibase_string_to_quad(char const *id, ISC_QUAD *qd); char *_php_ibase_quad_to_string(ISC_QUAD const qd); -int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, unsigned long max_len TSRMLS_DC); +int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, php_uint_t max_len TSRMLS_DC); int _php_ibase_blob_add(zval **string_arg, ibase_blob *ib_blob TSRMLS_DC); /* provided by ibase_events.c */ diff --git a/ext/interbase/php_ibase_udf.c b/ext/interbase/php_ibase_udf.c index 7faf314..bd49d62 100644 --- a/ext/interbase/php_ibase_udf.c +++ b/ext/interbase/php_ibase_udf.c @@ -331,7 +331,7 @@ static void call_php(char *name, PARAMDSC *r, int argc, PARAMDSC **argv) case IS_STRING: r->dsc_dtype = dtype_varying; memcpy(res->vary_string, Z_STRVAL(return_value), - (res->vary_length = min(r->dsc_length-2,Z_STRLEN(return_value)))); + (res->vary_length = min(r->dsc_length-2,Z_STRSIZE(return_value)))); r->dsc_length = res->vary_length+2; break; }
diff --git a/ext/interbase/ibase_blobs.c b/ext/interbase/ibase_blobs.c index 9d9d2f8..f61e0a2 100644 --- a/ext/interbase/ibase_blobs.c +++ b/ext/interbase/ibase_blobs.c @@ -95,13 +95,13 @@ typedef struct { /* {{{ */ /* }}} */ } IBASE_BLOBINFO; -int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, unsigned long max_len TSRMLS_DC) /* {{{ */ +int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, php_uint_t max_len TSRMLS_DC) /* {{{ */ { if (ib_blob->bl_qd.gds_quad_high || ib_blob->bl_qd.gds_quad_low) { /*not null ?*/ ISC_STATUS stat; char *bl_data; - unsigned long cur_len; + php_uint_t cur_len; unsigned short seg_len; bl_data = safe_emalloc(1, max_len, 1); @@ -130,12 +130,12 @@ int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, unsigned long m int _php_ibase_blob_add(zval **string_arg, ibase_blob *ib_blob TSRMLS_DC) /* {{{ */ { - unsigned long put_cnt = 0, rem_cnt; + php_uint_t put_cnt = 0, rem_cnt; unsigned short chunk_size; convert_to_string_ex(string_arg); - for (rem_cnt = Z_STRLEN_PP(string_arg); rem_cnt > 0; rem_cnt -= chunk_size) { + for (rem_cnt = Z_STRSIZE_PP(string_arg); rem_cnt > 0; rem_cnt -= chunk_size) { chunk_size = rem_cnt > USHRT_MAX ? USHRT_MAX : (unsigned short)rem_cnt; @@ -238,7 +238,7 @@ PHP_FUNCTION(ibase_blob_create) PHP_FUNCTION(ibase_blob_open) { char *blob_id; - int blob_id_len; + zend_str_size_int blob_id_len; zval *link = NULL; ibase_db_link *ib_link; ibase_trans *trans = NULL; @@ -250,12 +250,12 @@ PHP_FUNCTION(ibase_blob_open) default: WRONG_PARAM_COUNT; case 1: - if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "s", &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "S", &blob_id, &blob_id_len)) { RETURN_FALSE; } break; case 2: - if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rs", &link, &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rS", &link, &blob_id, &blob_id_len)) { RETURN_FALSE; } break; @@ -400,7 +400,7 @@ PHP_FUNCTION(ibase_blob_cancel) PHP_FUNCTION(ibase_blob_info) { char *blob_id; - int blob_id_len; + zend_str_size_int blob_id_len; zval *link = NULL; ibase_db_link *ib_link; ibase_trans *trans = NULL; @@ -413,12 +413,12 @@ PHP_FUNCTION(ibase_blob_info) default: WRONG_PARAM_COUNT; case 1: - if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "s", &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "S", &blob_id, &blob_id_len)) { RETURN_FALSE; } break; case 2: - if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rs", &link, &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rS", &link, &blob_id, &blob_id_len)) { RETURN_FALSE; } break; @@ -476,7 +476,7 @@ PHP_FUNCTION(ibase_blob_info) PHP_FUNCTION(ibase_blob_echo) { char *blob_id; - int blob_id_len; + zend_str_size_int blob_id_len; zval *link = NULL; ibase_db_link *ib_link; ibase_trans *trans = NULL; @@ -490,12 +490,12 @@ PHP_FUNCTION(ibase_blob_echo) default: WRONG_PARAM_COUNT; case 1: - if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "s", &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(1 TSRMLS_CC, "S", &blob_id, &blob_id_len)) { RETURN_FALSE; } break; case 2: - if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rs", &link, &blob_id, &blob_id_len)) { + if (FAILURE == zend_parse_parameters(2 TSRMLS_CC, "rS", &link, &blob_id, &blob_id_len)) { RETURN_FALSE; } break; diff --git a/ext/interbase/ibase_events.c b/ext/interbase/ibase_events.c index 3380def..0213647 100644 --- a/ext/interbase/ibase_events.c +++ b/ext/interbase/ibase_events.c @@ -93,7 +93,7 @@ static void _php_ibase_event_block(ibase_db_link *ib_link, unsigned short count, char **events, unsigned short *l, char **event_buf, char **result_buf) { ISC_STATUS dummy_result[20]; - unsigned long dummy_count[15]; + php_uint_t dummy_count[15]; /** * Unfortunately, there's no clean and portable way in C to pass arguments to @@ -131,7 +131,7 @@ PHP_FUNCTION(ibase_wait_event) int num_args; char *event_buffer, *result_buffer, *events[15]; unsigned short i = 0, event_count = 0, buffer_size; - unsigned long occurred_event[15]; + php_uint_t occurred_event[15]; RESET_ERRMSG; @@ -209,7 +209,7 @@ static isc_callback _php_ibase_callback(ibase_event *event, /* {{{ */ */ switch (event->state) { unsigned short i; - unsigned long occurred_event[15]; + php_uint_t occurred_event[15]; zval event_name, link_id, return_value, *args[2]; default: /* == DEAD */ diff --git a/ext/interbase/ibase_query.c b/ext/interbase/ibase_query.c index b30d741..196a45b 100644 --- a/ext/interbase/ibase_query.c +++ b/ext/interbase/ibase_query.c @@ -221,7 +221,7 @@ static int _php_ibase_alloc_array(ibase_array **ib_arrayp, XSQLDA *sqlda, /* {{{ for (i = n = 0; i < sqlda->sqld; ++i) { unsigned short dim; - unsigned long ar_size = 1; + php_uint_t ar_size = 1; XSQLVAR *var = &sqlda->sqlvar[i]; if ((var->sqltype & ~1) == SQL_ARRAY) { @@ -432,7 +432,7 @@ _php_ibase_alloc_query_error: } /* }}} */ -static int _php_ibase_bind_array(zval *val, char *buf, unsigned long buf_size, /* {{{ */ +static int _php_ibase_bind_array(zval *val, char *buf, php_uint_t buf_size, /* {{{ */ ibase_array *array, int dim TSRMLS_DC) { zval null_val, *pnull_val = &null_val; @@ -443,7 +443,7 @@ static int _php_ibase_bind_array(zval *val, char *buf, unsigned long buf_size, / ZVAL_NULL(pnull_val); if (dim < array->ar_desc.array_desc_dimensions) { - unsigned long slice_size = buf_size / dim_len; + php_uint_t slice_size = buf_size / dim_len; unsigned short i; zval **subval = &val; @@ -666,7 +666,7 @@ static int _php_ibase_bind(XSQLDA *sqlda, zval ***b_vars, BIND_BUF *buf, /* {{{ case SQL_TIMESTAMP: case SQL_TYPE_DATE: case SQL_TYPE_TIME: - force_null = (Z_STRLEN_P(b_var) == 0); + force_null = (Z_STRSIZE_P(b_var) == 0); } if (! force_null) break; @@ -736,7 +736,7 @@ static int _php_ibase_bind(XSQLDA *sqlda, zval ***b_vars, BIND_BUF *buf, /* {{{ convert_to_string(b_var); - if (Z_STRLEN_P(b_var) != BLOB_ID_LEN || + if (Z_STRSIZE_P(b_var) != BLOB_ID_LEN || !_php_ibase_string_to_quad(Z_STRVAL_P(b_var), &buf[i].val.qval)) { ibase_blob ib_blob = { NULL, BLOB_INPUT }; @@ -764,7 +764,7 @@ static int _php_ibase_bind(XSQLDA *sqlda, zval ***b_vars, BIND_BUF *buf, /* {{{ if (Z_TYPE_P(b_var) != IS_ARRAY) { convert_to_string(b_var); - if (Z_STRLEN_P(b_var) != BLOB_ID_LEN || + if (Z_STRSIZE_P(b_var) != BLOB_ID_LEN || !_php_ibase_string_to_quad(Z_STRVAL_P(b_var), &buf[i].val.qval)) { _php_ibase_module_error("Parameter %d: invalid array ID" TSRMLS_CC,i+1); @@ -801,7 +801,7 @@ static int _php_ibase_bind(XSQLDA *sqlda, zval ***b_vars, BIND_BUF *buf, /* {{{ /* we end up here if none of the switch cases handled the field */ convert_to_string(b_var); var->sqldata = Z_STRVAL_P(b_var); - var->sqllen = Z_STRLEN_P(b_var); + var->sqllen = Z_STRSIZE_P(b_var); var->sqltype = SQL_TEXT; } /* for */ return rv; @@ -991,7 +991,7 @@ static int _php_ibase_exec(INTERNAL_FUNCTION_PARAMETERS, ibase_result **ib_resul switch (ib_query->statement_type) { - unsigned long affected_rows; + php_uint_t affected_rows; case isc_info_sql_stmt_insert: case isc_info_sql_stmt_update: @@ -1062,8 +1062,9 @@ PHP_FUNCTION(ibase_query) { zval *zlink, *ztrans, ***bind_args = NULL; char *query; - int bind_i, query_len, bind_num; - long trans_res_id = 0; + int bind_i, bind_num; + zend_str_size_int query_len; + php_int_t trans_res_id = 0; ibase_db_link *ib_link = NULL; ibase_trans *trans = NULL; ibase_query ib_query = { NULL, NULL, 0, 0 }; @@ -1074,10 +1075,10 @@ PHP_FUNCTION(ibase_query) RETVAL_FALSE; switch (ZEND_NUM_ARGS()) { - long l; + php_int_t l; default: - if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, 3 TSRMLS_CC, "rrs", + if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, 3 TSRMLS_CC, "rrS", &zlink, &ztrans, &query, &query_len)) { ZEND_FETCH_RESOURCE2(ib_link, ibase_db_link*, &zlink, -1, LE_LINK, le_link, le_plink); @@ -1088,7 +1089,7 @@ PHP_FUNCTION(ibase_query) break; } case 2: - if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, 2 TSRMLS_CC, "rs", + if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, 2 TSRMLS_CC, "rS", &zlink, &query, &query_len)) { _php_ibase_get_link_trans(INTERNAL_FUNCTION_PARAM_PASSTHRU, &zlink, &ib_link, &trans); @@ -1101,7 +1102,7 @@ PHP_FUNCTION(ibase_query) /* the statement is 'CREATE DATABASE ...' if the link argument is IBASE_CREATE */ if (SUCCESS == zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() - TSRMLS_CC, "ls", &l, &query, &query_len) && l == PHP_IBASE_CREATE) { + TSRMLS_CC, "iS", &l, &query, &query_len) && l == PHP_IBASE_CREATE) { isc_db_handle db = NULL; isc_tr_handle trans = NULL; @@ -1140,7 +1141,7 @@ PHP_FUNCTION(ibase_query) } case 1: case 0: - if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() ? 1 : 0 TSRMLS_CC, "s", &query, + if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() ? 1 : 0 TSRMLS_CC, "S", &query, &query_len)) { ZEND_FETCH_RESOURCE2(ib_link, ibase_db_link *, NULL, IBG(default_link), LE_LINK, le_link, le_plink); @@ -1424,7 +1425,7 @@ format_date_time: } /* }}} */ -static int _php_ibase_arr_zval(zval *ar_zval, char *data, unsigned long data_size, /* {{{ */ +static int _php_ibase_arr_zval(zval *ar_zval, char *data, php_uint_t data_size, /* {{{ */ ibase_array *ib_array, int dim, int flag TSRMLS_DC) { /** @@ -1437,7 +1438,7 @@ static int _php_ibase_arr_zval(zval *ar_zval, char *data, unsigned long data_siz unsigned short i; if (dim < ib_array->ar_desc.array_desc_dimensions) { /* array again */ - unsigned long slice_size = data_size / dim_len; + php_uint_t slice_size = data_size / dim_len; array_init(ar_zval); @@ -1466,7 +1467,7 @@ static int _php_ibase_arr_zval(zval *ar_zval, char *data, unsigned long data_siz if (ib_array->ar_desc.array_desc_dtype == blr_varying || ib_array->ar_desc.array_desc_dtype == blr_varying2) { - Z_STRLEN_P(ar_zval) = strlen(Z_STRVAL_P(ar_zval)); + Z_STRSIZE_P(ar_zval) = strlen(Z_STRVAL_P(ar_zval)); } } return SUCCESS; @@ -1476,12 +1477,12 @@ static int _php_ibase_arr_zval(zval *ar_zval, char *data, unsigned long data_siz static void _php_ibase_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int fetch_type) /* {{{ */ { zval *result_arg; - long i, array_cnt = 0, flag = 0; + php_int_t i, array_cnt = 0, flag = 0; ibase_result *ib_result; RESET_ERRMSG; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r|l", &result_arg, &flag)) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r|i", &result_arg, &flag)) { return; } @@ -1547,7 +1548,7 @@ static void _php_ibase_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int fetch_type) if (flag & PHP_IBASE_FETCH_BLOBS) { /* fetch blob contents into hash */ ibase_blob blob_handle; - unsigned long max_len = 0; + php_uint_t max_len = 0; static char bl_items[] = {isc_info_blob_total_length}; char bl_info[20]; unsigned short i; @@ -1689,12 +1690,12 @@ PHP_FUNCTION(ibase_name_result) { zval *result_arg; char *name_arg; - int name_arg_len; + zend_str_size_int name_arg_len; ibase_result *ib_result; RESET_ERRMSG; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &result_arg, &name_arg, &name_arg_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rS", &result_arg, &name_arg, &name_arg_len) == FAILURE) { return; } @@ -1735,19 +1736,20 @@ PHP_FUNCTION(ibase_prepare) zval *link_arg, *trans_arg; ibase_db_link *ib_link; ibase_trans *trans = NULL; - int query_len, trans_res_id = 0; + zend_str_size_int query_len; + int trans_res_id = 0; ibase_query *ib_query; char *query; RESET_ERRMSG; if (ZEND_NUM_ARGS() == 1) { - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &query, &query_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S", &query, &query_len) == FAILURE) { return; } ZEND_FETCH_RESOURCE2(ib_link, ibase_db_link *, NULL, IBG(default_link), LE_LINK, le_link, le_plink); } else if (ZEND_NUM_ARGS() == 2) { - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &link_arg, &query, &query_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rS", &link_arg, &query, &query_len) == FAILURE) { return; } _php_ibase_get_link_trans(INTERNAL_FUNCTION_PARAM_PASSTHRU, &link_arg, &ib_link, &trans); @@ -1756,7 +1758,7 @@ PHP_FUNCTION(ibase_prepare) trans_res_id = Z_RESVAL_P(link_arg); } } else { - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rrs", &link_arg, &trans_arg, &query, &query_len) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rrS", &link_arg, &trans_arg, &query, &query_len) == FAILURE) { return; } ZEND_FETCH_RESOURCE2(ib_link, ibase_db_link *, &link_arg, -1, LE_LINK, le_link, le_plink); @@ -2003,13 +2005,13 @@ static void _php_ibase_field_info(zval *return_value, XSQLVAR *var) /* {{{ */ PHP_FUNCTION(ibase_field_info) { zval *result_arg; - long field_arg; + php_int_t field_arg; int type; XSQLDA *sqlda; RESET_ERRMSG; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &result_arg, &field_arg) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ri", &result_arg, &field_arg) == FAILURE) { return; } @@ -2067,12 +2069,12 @@ PHP_FUNCTION(ibase_num_params) PHP_FUNCTION(ibase_param_info) { zval *result_arg; - long field_arg; + php_int_t field_arg; ibase_query *ib_query; RESET_ERRMSG; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &result_arg, &field_arg) == FAILURE) { + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ri", &result_arg, &field_arg) == FAILURE) { return; } diff --git a/ext/interbase/ibase_service.c b/ext/interbase/ibase_service.c index 956ef04..a8e26c2 100644 --- a/ext/interbase/ibase_service.c +++ b/ext/interbase/ibase_service.c @@ -33,7 +33,7 @@ typedef struct { isc_svc_handle handle; char *hostname; char *username; - long res_id; + php_int_t res_id; } ibase_service; static int le_service; @@ -139,7 +139,8 @@ static void _php_ibase_user(INTERNAL_FUNCTION_PARAMETERS, char operation) /* {{{ static char const user_flags[] = { isc_spb_sec_username, isc_spb_sec_password, isc_spb_sec_firstname, isc_spb_sec_middlename, isc_spb_sec_lastname }; char buf[128], *args[] = { NULL, NULL, NULL, NULL, NULL }; - int i, args_len[] = { 0, 0, 0, 0, 0 }; + int i; + zend_str_size_int args_len[] = { 0, 0, 0, 0, 0 }; unsigned short spb_len = 1; zval *res; ibase_service *svm; @@ -147,7 +148,7 @@ static void _php_ibase_user(INTERNAL_FUNCTION_PARAMETERS, char operation) /* {{{ RESET_ERRMSG; if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, - (operation == isc_action_svc_delete_user) ? "rs" : "rss|sss", + (operation == isc_action_svc_delete_user) ? "rS" : "rSS|SSS", &res, &args[0], &args_len[0], &args[1], &args_len[1], &args[2], &args_len[2], &args[3], &args_len[3], &args[4], &args_len[4])) { RETURN_FALSE; @@ -210,14 +211,15 @@ PHP_FUNCTION(ibase_delete_user) Connect to the service manager */ PHP_FUNCTION(ibase_service_attach) { - int hlen, ulen, plen, spb_len; + zend_str_size_int hlen, ulen, plen; + int spb_len; ibase_service *svm; char buf[128], *host, *user, *pass, *loc; isc_svc_handle handle = NULL; RESET_ERRMSG; - if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sss", + if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "SSS", &host, &hlen, &user, &ulen, &pass, &plen)) { RETURN_FALSE; @@ -276,7 +278,7 @@ static void _php_ibase_service_query(INTERNAL_FUNCTION_PARAMETERS, /* {{{ */ static char spb[] = { isc_info_svc_timeout, 10, 0, 0, 0 }; char res_buf[400], *result, *heap_buf = NULL, *heap_p; - long heap_buf_size = 200, line_len; + php_int_t heap_buf_size = 200, line_len; /* info about users requires an action first */ if (info_action == isc_info_svc_get_users) { @@ -312,7 +314,7 @@ query_loop: } } if (!heap_buf || (heap_p - heap_buf + line_len +2) > heap_buf_size) { - long res_size = heap_buf ? heap_p - heap_buf : 0; + php_int_t res_size = heap_buf ? heap_p - heap_buf : 0; while (heap_buf_size < (res_size + line_len +2)) { heap_buf_size *= 2; @@ -425,14 +427,15 @@ static void _php_ibase_backup_restore(INTERNAL_FUNCTION_PARAMETERS, char operati */ zval *res; char *db, *bk, buf[200]; - int dblen, bklen, spb_len; - long opts = 0; + zend_str_size_int dblen, bklen; + int spb_len; + php_int_t opts = 0; zend_bool verbose = 0; ibase_service *svm; RESET_ERRMSG; - if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rss|lb", + if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rSS|ib", &res, &db, &dblen, &bk, &bklen, &opts, &verbose)) { RETURN_FALSE; } @@ -489,13 +492,14 @@ static void _php_ibase_service_action(INTERNAL_FUNCTION_PARAMETERS, char svc_act { zval *res; char buf[128], *db; - int dblen, spb_len; - long action, argument = 0; + zend_str_size_int dblen; + int spb_len; + php_int_t action, argument = 0; ibase_service *svm; RESET_ERRMSG; - if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rsl|l", + if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rSi|i", &res, &db, &dblen, &action, &argument)) { RETURN_FALSE; } @@ -597,12 +601,12 @@ PHP_FUNCTION(ibase_db_info) PHP_FUNCTION(ibase_server_info) { zval *res; - long action; + php_int_t action; ibase_service *svm; RESET_ERRMSG; - if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &res, &action)) { + if (SUCCESS != zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ri", &res, &action)) { RETURN_FALSE; } diff --git a/ext/interbase/interbase.c b/ext/interbase/interbase.c index 132ad35..3fd58a6 100644 --- a/ext/interbase/interbase.c +++ b/ext/interbase/interbase.c @@ -544,7 +544,7 @@ void _php_ibase_module_error(char *msg TSRMLS_DC, ...) /* {{{ */ /* {{{ internal macros, functions and structures */ typedef struct { isc_db_handle *db_ptr; - long tpb_len; + php_int_t tpb_len; char *tpb_ptr; } ISC_TEB; @@ -859,7 +859,7 @@ static char const dpb_args[] = { 0, isc_dpb_user_name, isc_dpb_password, isc_dpb_lc_ctype, isc_dpb_sql_role_name, 0 }; -int _php_ibase_attach_db(char **args, int *len, long *largs, isc_db_handle *db TSRMLS_DC) +int _php_ibase_attach_db(char **args, int *len, php_int_t *largs, isc_db_handle *db TSRMLS_DC) { short i, dpb_len, buf_len = 257-2; /* version byte at the front, and a null at the end */ char dpb_buffer[257] = { isc_dpb_version1, 0 }, *dpb; @@ -895,8 +895,9 @@ int _php_ibase_attach_db(char **args, int *len, long *largs, isc_db_handle *db T static void _php_ibase_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* {{{ */ { char *c, hash[16], *args[] = { NULL, NULL, NULL, NULL, NULL }; - int i, len[] = { 0, 0, 0, 0, 0 }; - long largs[] = { 0, 0, 0 }; + int i; + zend_str_size_int len[] = { 0, 0, 0, 0, 0 }; + php_int_t largs[] = { 0, 0, 0 }; PHP_MD5_CTX hash_context; zend_rsrc_list_entry new_index_ptr, *le; isc_db_handle db_handle = NULL; @@ -904,7 +905,7 @@ static void _php_ibase_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* RESET_ERRMSG; - if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|ssssllsl", + if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|SSSSiiSi", &args[DB], &len[DB], &args[USER], &len[USER], &args[PASS], &len[PASS], &args[CSET], &len[CSET], &largs[BUF], &largs[DLECT], &args[ROLE], &len[ROLE], &largs[SYNC])) { @@ -941,7 +942,7 @@ static void _php_ibase_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* /* try to reuse a connection */ if (SUCCESS == zend_hash_find(&EG(regular_list), hash, sizeof(hash), (void *) &le)) { - long xlink; + php_int_t xlink; int type; if (Z_TYPE_P(le) != le_index_ptr) { @@ -959,7 +960,7 @@ static void _php_ibase_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent) /* /* ... or a persistent one */ switch (zend_hash_find(&EG(persistent_list), hash, sizeof(hash), (void *) &le)) { - long l; + php_int_t l; static char info[] = { isc_info_base_level, isc_info_end }; char result[8]; @@ -1141,7 +1142,7 @@ PHP_FUNCTION(ibase_trans) ib_link = (ibase_db_link **) safe_emalloc(sizeof(ibase_db_link *),1+argn,0); if (argn > 0) { - long trans_argl = 0; + php_int_t trans_argl = 0; char *tpb; ISC_TEB *teb; zval ***args = NULL; @@ -1415,8 +1416,8 @@ PHP_FUNCTION(ibase_gen_id) { zval *link = NULL; char query[128], *generator; - int gen_len; - long inc = 1; + zend_str_size_int gen_len; + php_int_t inc = 1; ibase_db_link *ib_link; ibase_trans *trans = NULL; XSQLDA out_sqlda; @@ -1424,7 +1425,7 @@ PHP_FUNCTION(ibase_gen_id) RESET_ERRMSG; - if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|lr", &generator, &gen_len, + if (FAILURE == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "S|ir", &generator, &gen_len, &inc, &link)) { RETURN_FALSE; } @@ -1456,8 +1457,8 @@ PHP_FUNCTION(ibase_gen_id) } /* don't return the generator value as a string unless it doesn't fit in a long */ -#if SIZEOF_LONG < 8 - if (result < LONG_MIN || result > LONG_MAX) { +#if SIZEOF_ZEND_INT < 8 + if (result < PHP_INT_MIN || result > PHP_INT_MAX) { char *res; int l; diff --git a/ext/interbase/php_ibase_includes.h b/ext/interbase/php_ibase_includes.h index 559be77..11e0027 100644 --- a/ext/interbase/php_ibase_includes.h +++ b/ext/interbase/php_ibase_includes.h @@ -62,10 +62,10 @@ extern int le_link, le_plink, le_trans; ZEND_BEGIN_MODULE_GLOBALS(ibase) ISC_STATUS status[20]; - long default_link; - long num_links, num_persistent; + php_int_t default_link; + php_int_t num_links, num_persistent; char errmsg[MAX_ERRMSG]; - long sql_code; + php_int_t sql_code; ZEND_END_MODULE_GLOBALS(ibase) ZEND_EXTERN_MODULE_GLOBALS(ibase) @@ -80,7 +80,7 @@ typedef struct { typedef struct { isc_tr_handle handle; unsigned short link_cnt; - unsigned long affected_rows; + php_uint_t affected_rows; ibase_db_link *db_link[1]; /* last member */ } ibase_trans; @@ -97,7 +97,7 @@ typedef struct { typedef struct event { ibase_db_link *link; - long link_res_id; + php_int_t link_res_id; ISC_LONG event_id; unsigned short event_count; char **events; @@ -176,7 +176,7 @@ void php_ibase_query_minit(INIT_FUNC_ARGS); void php_ibase_blobs_minit(INIT_FUNC_ARGS); int _php_ibase_string_to_quad(char const *id, ISC_QUAD *qd); char *_php_ibase_quad_to_string(ISC_QUAD const qd); -int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, unsigned long max_len TSRMLS_DC); +int _php_ibase_blob_get(zval *return_value, ibase_blob *ib_blob, php_uint_t max_len TSRMLS_DC); int _php_ibase_blob_add(zval **string_arg, ibase_blob *ib_blob TSRMLS_DC); /* provided by ibase_events.c */ diff --git a/ext/interbase/php_ibase_udf.c b/ext/interbase/php_ibase_udf.c index 7faf314..bd49d62 100644 --- a/ext/interbase/php_ibase_udf.c +++ b/ext/interbase/php_ibase_udf.c @@ -331,7 +331,7 @@ static void call_php(char *name, PARAMDSC *r, int argc, PARAMDSC **argv) case IS_STRING: r->dsc_dtype = dtype_varying; memcpy(res->vary_string, Z_STRVAL(return_value), - (res->vary_length = min(r->dsc_length-2,Z_STRLEN(return_value)))); + (res->vary_length = min(r->dsc_length-2,Z_STRSIZE(return_value)))); r->dsc_length = res->vary_length+2; break; }