Read and verify the map file */
PHP_FUNCTION(filepro)
{
- pval *dir;
+ zval **dir;
FILE *fp;
char workbuf[MAXPATHLEN];
char readbuf[256];
FP_FIELD *new_field, *tmp, *next;
FP_TLS_VARS;
- if (ZEND_NUM_ARGS() != 1 || getParameters(ht, 1, &dir) == FAILURE) {
+ if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &dir) == FAILURE) {
WRONG_PARAM_COUNT;
}
- convert_to_string(dir);
+ convert_to_string_ex(dir);
/* free memory */
if (FP_GLOBAL(fp_database) != NULL) {
FP_GLOBAL(fp_fcount) = -1;
FP_GLOBAL(fp_keysize) = -1;
- snprintf(workbuf, sizeof(workbuf), "%s/map", Z_STRVAL_P(dir));
+ snprintf(workbuf, sizeof(workbuf), "%s/map", Z_STRVAL_PP(dir));
if (PG(safe_mode) && (!php_checkuid(workbuf, NULL, CHECKUID_CHECK_FILE_AND_DIR))) {
RETURN_FALSE;
}
if (!(fp = VCWD_FOPEN(workbuf, "r"))) {
- php_error(E_WARNING, "%s(): Cannot open map: [%d] %s", get_active_function_name(TSRMLS_C),
- errno, strerror(errno));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot open map: [%d] %s", errno, strerror(errno));
RETURN_FALSE;
}
if (!fgets(readbuf, sizeof(readbuf), fp)) {
fclose(fp);
- php_error(E_WARNING, "%s(): Cannot read map: [%d] %s", get_active_function_name(TSRMLS_C),
- errno, strerror(errno));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot read map: [%d] %s", errno, strerror(errno));
RETURN_FALSE;
}
/* Get the field count, assume the file is readable! */
if (strcmp(php_strtok_r(readbuf, ":", &strtok_buf), "map")) {
- php_error(E_WARNING, "%s(): Map file corrupt or encrypted", get_active_function_name(TSRMLS_C));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Map file corrupt or encrypted");
RETURN_FALSE;
}
FP_GLOBAL(fp_keysize) = atoi(php_strtok_r(NULL, ":", &strtok_buf));
for (i = 0; i < FP_GLOBAL(fp_fcount); i++) {
if (!fgets(readbuf, sizeof(readbuf), fp)) {
fclose(fp);
- php_error(E_WARNING, "%s(): Cannot read map: [%d] %s", get_active_function_name(TSRMLS_C),
- errno, strerror(errno));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot read map: [%d] %s", errno, strerror(errno));
RETURN_FALSE;
}
new_field = emalloc(sizeof(FP_FIELD));
}
fclose(fp);
- FP_GLOBAL(fp_database) = estrndup(Z_STRVAL_P(dir), Z_STRLEN_P(dir));
+ FP_GLOBAL(fp_database) = estrndup(Z_STRVAL_PP(dir), Z_STRLEN_PP(dir));
RETVAL_TRUE;
}
}
if (!FP_GLOBAL(fp_database)) {
- php_error(E_WARNING,
- "%s(): Must set database directory first!", get_active_function_name(TSRMLS_C));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Must set database directory first!");
RETURN_FALSE;
}
}
if (!(fp = VCWD_FOPEN(workbuf, "r"))) {
- php_error(E_WARNING, "%s(): Cannot open key: [%d] %s", get_active_function_name(TSRMLS_C),
- errno, strerror(errno));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot open key: [%d] %s", errno, strerror(errno));
RETURN_FALSE;
}
while (!feof(fp)) {
Gets the name of a field */
PHP_FUNCTION(filepro_fieldname)
{
- pval *fno;
+ zval **fno;
FP_FIELD *lp;
int i;
FP_TLS_VARS;
- if (ZEND_NUM_ARGS() != 1 || getParameters(ht, 1, &fno) == FAILURE) {
+ if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &fno) == FAILURE) {
WRONG_PARAM_COUNT;
}
- convert_to_long(fno);
+ convert_to_long_ex(fno);
if (!FP_GLOBAL(fp_database)) {
- php_error(E_WARNING,
- "%s(): Must set database directory first!", get_active_function_name(TSRMLS_C));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Must set database directory first!");
RETURN_FALSE;
}
for (i = 0, lp = FP_GLOBAL(fp_fieldlist); lp; lp = lp->next, i++) {
- if (i == Z_LVAL_P(fno)) {
+ if (i == Z_LVAL_PP(fno)) {
RETURN_STRING(lp->name, 1);
}
}
- php_error(E_WARNING,
- "%s(): Unable to locate field number %d.", get_active_function_name(TSRMLS_C),
- Z_LVAL_P(fno));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to locate field number %d.", Z_LVAL_PP(fno));
RETVAL_FALSE;
}
Gets the type of a field */
PHP_FUNCTION(filepro_fieldtype)
{
- pval *fno;
+ zval **fno;
FP_FIELD *lp;
int i;
FP_TLS_VARS;
- if (ZEND_NUM_ARGS() != 1 || getParameters(ht, 1, &fno) == FAILURE) {
+ if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &fno) == FAILURE) {
WRONG_PARAM_COUNT;
}
- convert_to_long(fno);
+ convert_to_long_ex(fno);
if (!FP_GLOBAL(fp_database)) {
- php_error(E_WARNING,
- "%s(): Must set database directory first!", get_active_function_name(TSRMLS_C));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Must set database directory first!");
RETURN_FALSE;
}
for (i = 0, lp = FP_GLOBAL(fp_fieldlist); lp; lp = lp->next, i++) {
- if (i == Z_LVAL_P(fno)) {
+ if (i == Z_LVAL_PP(fno)) {
RETURN_STRING(lp->format, 1);
}
}
- php_error(E_WARNING,
- "%s(): Unable to locate field number %d.", get_active_function_name(TSRMLS_C),
- Z_LVAL_P(fno));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to locate field number %d.", Z_LVAL_PP(fno));
RETVAL_FALSE;
}
/* }}} */
Gets the width of a field */
PHP_FUNCTION(filepro_fieldwidth)
{
- pval *fno;
+ zval **fno;
FP_FIELD *lp;
int i;
FP_TLS_VARS;
- if (ZEND_NUM_ARGS() != 1 || getParameters(ht, 1, &fno) == FAILURE) {
+ if (ZEND_NUM_ARGS() != 1 || zend_get_parameters_ex(1, &fno) == FAILURE) {
WRONG_PARAM_COUNT;
}
- convert_to_long(fno);
+ convert_to_long_ex(fno);
if (!FP_GLOBAL(fp_database)) {
- php_error(E_WARNING,
- "%s(): Must set database directory first!", get_active_function_name(TSRMLS_C));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Must set database directory first!");
RETURN_FALSE;
}
for (i = 0, lp = FP_GLOBAL(fp_fieldlist); lp; lp = lp->next, i++) {
- if (i == Z_LVAL_P(fno)) {
+ if (i == Z_LVAL_PP(fno)) {
RETURN_LONG(lp->width);
}
}
- php_error(E_WARNING,
- "%s(): Unable to locate field number %d.", get_active_function_name(TSRMLS_C),
- Z_LVAL_P(fno));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to locate field number %d.", Z_LVAL_PP(fno));
RETVAL_FALSE;
}
/* }}} */
}
if (!FP_GLOBAL(fp_database)) {
- php_error(E_WARNING,
- "%s(): Must set database directory first!", get_active_function_name(TSRMLS_C));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Must set database directory first!");
RETURN_FALSE;
}
Retrieves data from a filePro database */
PHP_FUNCTION(filepro_retrieve)
{
- pval *rno, *fno;
+ zval **rno, **fno;
FP_FIELD *lp;
FILE *fp;
char workbuf[MAXPATHLEN];
long offset;
FP_TLS_VARS;
- if (ZEND_NUM_ARGS() != 2 || getParameters(ht, 2, &rno, &fno) == FAILURE) {
+ if (ZEND_NUM_ARGS() != 2 || zend_get_parameters_ex(2, &rno, &fno) == FAILURE) {
WRONG_PARAM_COUNT;
}
if (!FP_GLOBAL(fp_database)) {
- php_error(E_WARNING,
- "%s(): Must set database directory first!", get_active_function_name(TSRMLS_C));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Must set database directory first!");
RETURN_FALSE;
}
- convert_to_long(rno);
- convert_to_long(fno);
+ convert_to_long_ex(rno);
+ convert_to_long_ex(fno);
- fnum = Z_LVAL_P(fno);
- rnum = Z_LVAL_P(rno);
+ fnum = Z_LVAL_PP(fno);
+ rnum = Z_LVAL_PP(rno);
if (rnum < 0 || fnum < 0 || fnum >= FP_GLOBAL(fp_fcount)) {
- php_error(E_WARNING, "%s(): Parameters out of range", get_active_function_name(TSRMLS_C));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Parameters out of range");
RETURN_FALSE;
}
offset += lp->width;
}
if (!lp) {
- php_error(E_WARNING, "%s(): Cannot locate field", get_active_function_name(TSRMLS_C));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot locate field");
RETURN_FALSE;
}
}
if (!(fp = VCWD_FOPEN(workbuf, "r"))) {
- php_error(E_WARNING, "%s(): Cannot open key: [%d] %s", get_active_function_name(TSRMLS_C),
- errno, strerror(errno));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot open key: [%d] %s", errno, strerror(errno));
fclose(fp);
RETURN_FALSE;
}
readbuf = emalloc (lp->width+1);
if (fread(readbuf, lp->width, 1, fp) != 1) {
- php_error(E_WARNING, "%s(): Cannot read data: [%d] %s", get_active_function_name(TSRMLS_C),
- errno, strerror(errno));
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot read data: [%d] %s", errno, strerror(errno));
efree(readbuf);
fclose(fp);
RETURN_FALSE;