summaryrefslogtreecommitdiff
path: root/ext/pgsql/pgsql.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/pgsql/pgsql.c')
-rw-r--r--ext/pgsql/pgsql.c87
1 files changed, 54 insertions, 33 deletions
diff --git a/ext/pgsql/pgsql.c b/ext/pgsql/pgsql.c
index 82acc88f0c..46798f19ea 100644
--- a/ext/pgsql/pgsql.c
+++ b/ext/pgsql/pgsql.c
@@ -48,7 +48,7 @@
#define PGSQL_ESCAPE_STRING 1
#define PGSQL_ESCAPE_BYTEA 2
-#define CHECK_DEFAULT_LINK(x) if (x == -1) { php_error(E_WARNING, "%s: no PostgreSQL link opened yet", get_active_function_name(TSRMLS_C)); }
+#define CHECK_DEFAULT_LINK(x) if (x == -1) { php_error(E_WARNING, "%s() no PostgreSQL link opened yet", get_active_function_name(TSRMLS_C)); }
/* {{{ pgsql_functions[]
*/
@@ -497,12 +497,14 @@ static void php_pgsql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
list_entry new_le;
if (PGG(max_links)!=-1 && PGG(num_links)>=PGG(max_links)) {
- php_error(E_WARNING,"PostgreSQL: Too many open links (%d)",PGG(num_links));
+ php_error(E_WARNING,"%s() cannot create new link. Too many open links (%d)",
+ get_active_function_name(TSRMLS_C), PGG(num_links));
efree(hashed_details);
RETURN_FALSE;
}
if (PGG(max_persistent)!=-1 && PGG(num_persistent)>=PGG(max_persistent)) {
- php_error(E_WARNING,"PostgreSQL: Too many open persistent links (%d)",PGG(num_persistent));
+ php_error(E_WARNING,"%s() cannot create new link. Too many open persistent links (%d)",
+ get_active_function_name(TSRMLS_C), PGG(num_persistent));
efree(hashed_details);
RETURN_FALSE;
}
@@ -514,7 +516,8 @@ static void php_pgsql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
pgsql=PQsetdb(host,port,options,tty,dbname);
}
if (pgsql==NULL || PQstatus(pgsql)==CONNECTION_BAD) {
- php_error(E_WARNING,"Unable to connect to PostgreSQL server: %s",PQerrorMessage(pgsql));
+ php_error(E_WARNING,"%s() unable to connect to PostgreSQL server: %s",
+ get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
if (pgsql) {
PQfinish(pgsql);
}
@@ -557,7 +560,8 @@ static void php_pgsql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
PQreset(le->ptr);
}
if (le->ptr==NULL || PQstatus(le->ptr)==CONNECTION_BAD) {
- php_error(E_WARNING,"PostgreSQL link lost, unable to reconnect");
+ php_error(E_WARNING,"%s() PostgreSQL link lost, unable to reconnect",
+ get_active_function_name(TSRMLS_C));
zend_hash_del(&EG(persistent_list),hashed_details,hashed_details_length+1);
efree(hashed_details);
RETURN_FALSE;
@@ -597,7 +601,8 @@ static void php_pgsql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
}
}
if (PGG(max_links)!=-1 && PGG(num_links)>=PGG(max_links)) {
- php_error(E_WARNING,"PostgreSQL: Too many open links (%d)",PGG(num_links));
+ php_error(E_WARNING,"%s() cannot create new link. Too many open links (%d)",
+ get_active_function_name(TSRMLS_C), PGG(num_links));
efree(hashed_details);
RETURN_FALSE;
}
@@ -607,7 +612,8 @@ static void php_pgsql_do_connect(INTERNAL_FUNCTION_PARAMETERS, int persistent)
pgsql = PQsetdb(host,port,options,tty,dbname);
}
if (pgsql==NULL || PQstatus(pgsql)==CONNECTION_BAD) {
- php_error(E_WARNING,"Unable to connect to PostgreSQL server: %s",PQerrorMessage(pgsql));
+ php_error(E_WARNING,"%s() unable to connect to PostgreSQL server: %s",
+ get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
efree(hashed_details);
RETURN_FALSE;
}
@@ -865,7 +871,8 @@ PHP_FUNCTION(pg_query)
case PGRES_BAD_RESPONSE:
case PGRES_NONFATAL_ERROR:
case PGRES_FATAL_ERROR:
- php_error(E_WARNING, "PostgreSQL query failed: %s", PQerrorMessage(pgsql));
+ php_error(E_WARNING, "%s() query failed: %s",
+ get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
RETURN_FALSE;
break;
case PGRES_COMMAND_OK: /* successful command that did not return rows */
@@ -1033,7 +1040,8 @@ static void php_pgsql_get_field_info(INTERNAL_FUNCTION_PARAMETERS, int entry_typ
convert_to_long_ex(field);
if (Z_LVAL_PP(field) < 0 || Z_LVAL_PP(field) >= PQnfields(pgsql_result)) {
- php_error(E_WARNING,"Bad field offset specified");
+ php_error(E_WARNING,"%s() bad field offset specified",
+ get_active_function_name(TSRMLS_C));
RETURN_FALSE;
}
@@ -1133,7 +1141,8 @@ PHP_FUNCTION(pg_fetch_result)
convert_to_long_ex(row);
pgsql_row = Z_LVAL_PP(row);
if (pgsql_row < 0 || pgsql_row >= PQntuples(pgsql_result)) {
- php_error(E_WARNING,"Unable to jump to row %d on PostgreSQL result index %d", Z_LVAL_PP(row), Z_LVAL_PP(result));
+ php_error(E_WARNING,"%s() unable to jump to row %d on PostgreSQL result index %d",
+ get_active_function_name(TSRMLS_C), Z_LVAL_PP(row), Z_LVAL_PP(result));
RETURN_FALSE;
}
}
@@ -1147,7 +1156,8 @@ PHP_FUNCTION(pg_fetch_result)
break;
}
if (field_offset<0 || field_offset>=PQnfields(pgsql_result)) {
- php_error(E_WARNING,"Bad column offset specified");
+ php_error(E_WARNING,"%s() bad column offset specified",
+ get_active_function_name(TSRMLS_C));
RETURN_FALSE;
}
@@ -1217,7 +1227,8 @@ static void php_pgsql_fetch_hash(INTERNAL_FUNCTION_PARAMETERS, int result_type)
pgsql_row = Z_LVAL_PP(row);
pg_result->row = pgsql_row;
if (pgsql_row < 0 || pgsql_row >= PQntuples(pgsql_result)) {
- php_error(E_WARNING, "Unable to jump to row %d on PostgreSQL result index %d", Z_LVAL_PP(row), Z_LVAL_PP(result));
+ php_error(E_WARNING, "%s() unable to jump to row %d on PostgreSQL result index %d",
+ get_active_function_name(TSRMLS_C), Z_LVAL_PP(row), Z_LVAL_PP(result));
RETURN_FALSE;
}
} else {
@@ -1327,7 +1338,8 @@ static void php_pgsql_data_info(INTERNAL_FUNCTION_PARAMETERS, int entry_type)
convert_to_long_ex(row);
pgsql_row = Z_LVAL_PP(row);
if (pgsql_row < 0 || pgsql_row >= PQntuples(pgsql_result)) {
- php_error(E_WARNING,"Unable to jump to row %d on PostgreSQL result index %d", Z_LVAL_PP(row), Z_LVAL_PP(result));
+ php_error(E_WARNING,"%s() unable to jump to row %d on PostgreSQL result index %d",
+ get_active_function_name(TSRMLS_C), Z_LVAL_PP(row), Z_LVAL_PP(result));
RETURN_FALSE;
}
}
@@ -1343,7 +1355,8 @@ static void php_pgsql_data_info(INTERNAL_FUNCTION_PARAMETERS, int entry_type)
break;
}
if (field_offset < 0 || field_offset >= PQnfields(pgsql_result)) {
- php_error(E_WARNING, "Bad column offset specified");
+ php_error(E_WARNING, "%s() bad column offset specified",
+ get_active_function_name(TSRMLS_C));
RETURN_FALSE;
}
@@ -1546,10 +1559,11 @@ PHP_FUNCTION(pg_lo_create)
What's the use of an object that can be only written to, but not read from, and vice
versa? Beats me... And the access type (r/w) must be specified again when opening
the object, probably (?) overrides this. (Jouni)
- */
+ */
if ((pgsql_oid = lo_creat(pgsql, INV_READ|INV_WRITE))==0) {
- php_error(E_WARNING,"Unable to create PostgreSQL large object");
+ php_error(E_WARNING, "%s() unable to create PostgreSQL large object",
+ get_active_function_name(TSRMLS_C));
RETURN_FALSE;
}
@@ -1592,7 +1606,8 @@ PHP_FUNCTION(pg_lo_unlink)
ZEND_FETCH_RESOURCE2(pgsql, PGconn *, pgsql_link, id, "PostgreSQL link", le_link, le_plink);
if (lo_unlink(pgsql, pgsql_oid) == -1) {
- php_error(E_WARNING, "Unable to delete PostgreSQL large object %d", (int) pgsql_oid);
+ php_error(E_WARNING, "%s() unable to delete PostgreSQL large object %d",
+ get_active_function_name(TSRMLS_C), (int) pgsql_oid);
RETURN_FALSE;
}
RETURN_TRUE;
@@ -1665,17 +1680,20 @@ PHP_FUNCTION(pg_lo_open)
if (create) {
if ((pgsql_oid = lo_creat(pgsql, INV_READ|INV_WRITE)) == 0) {
efree(pgsql_lofp);
- php_error(E_WARNING,"Unable to create PostgreSQL large object");
+ php_error(E_WARNING, "%s() unable to create PostgreSQL large object",
+ get_active_function_name(TSRMLS_C));
RETURN_FALSE;
} else {
if ((pgsql_lofd = lo_open(pgsql, pgsql_oid, pgsql_mode)) == -1) {
if (lo_unlink(pgsql, pgsql_oid) == -1) {
efree(pgsql_lofp);
- php_error(E_WARNING,"Something's really messed up!!! Your database is badly corrupted in a way NOT related to PHP.");
+ php_error(E_WARNING, "%s() Something's really messed up!!! Your database is badly corrupted in a way NOT related to PHP",
+ get_active_function_name(TSRMLS_C));
RETURN_FALSE;
}
efree(pgsql_lofp);
- php_error(E_WARNING,"Unable to open PostgreSQL large object");
+ php_error(E_WARNING, "%s() unable to open PostgreSQL large object",
+ get_active_function_name(TSRMLS_C));
RETURN_FALSE;
} else {
pgsql_lofp->conn = pgsql;
@@ -1686,7 +1704,8 @@ PHP_FUNCTION(pg_lo_open)
}
} else {
efree(pgsql_lofp);
- php_error(E_WARNING,"Unable to open PostgreSQL large object");
+ php_error(E_WARNING,"%s() unable to open PostgreSQL large object",
+ get_active_function_name(TSRMLS_C));
RETURN_FALSE;
}
} else {
@@ -1722,7 +1741,8 @@ PHP_FUNCTION(pg_lo_close)
ZEND_FETCH_RESOURCE(pgsql, pgLofp *, pgsql_lofp, -1, "PostgreSQL large object", le_lofp);
if (lo_close((PGconn *)pgsql->conn, pgsql->lofd) < 0) {
- php_error(E_WARNING,"Unable to close PostgreSQL large object descriptor %d", pgsql->lofd);
+ php_error(E_WARNING, "%s() unable to close PostgreSQL large object descriptor %d",
+ get_active_function_name(TSRMLS_C), pgsql->lofd);
RETVAL_FALSE;
} else {
RETVAL_TRUE;
@@ -2075,10 +2095,11 @@ PHP_FUNCTION(pg_end_copy)
result = PQendcopy(pgsql);
if (result!=0) {
- php_error(E_WARNING, "PostgreSQL query failed: %s", PQerrorMessage(pgsql));
+ php_error(E_WARNING, "%s() PostgreSQL query failed: %s",
+ get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
RETURN_FALSE;
- }
- RETURN_TRUE;
+ }
+ RETURN_TRUE;
}
/* }}} */
@@ -2116,7 +2137,8 @@ PHP_FUNCTION(pg_put_line)
result = PQputline(pgsql, Z_STRVAL_PP(query));
if (result==EOF) {
- php_error(E_WARNING, "PostgreSQL query failed: %s", PQerrorMessage(pgsql));
+ php_error(E_WARNING, "%s() PostgreSQL query failed: %s",
+ get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
RETURN_FALSE;
}
RETURN_TRUE;
@@ -2184,7 +2206,7 @@ PHP_FUNCTION(pg_copy_to)
while (!copydone)
{
if ((ret = PQgetline(pgsql, copybuf, COPYBUFSIZ))) {
- php_error(E_WARNING, "%s() query failed: %s",
+ php_error(E_WARNING, "%s() query failed: %s",
get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
RETURN_FALSE;
}
@@ -2219,7 +2241,7 @@ PHP_FUNCTION(pg_copy_to)
}
}
if (PQendcopy(pgsql)) {
- php_error(E_WARNING, "%s() query failed: %s",
+ php_error(E_WARNING, "%s() query failed: %s",
get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
RETURN_FALSE;
}
@@ -2233,7 +2255,7 @@ PHP_FUNCTION(pg_copy_to)
break;
default:
PQclear(pgsql_result);
- php_error(E_WARNING, "%s() query failed: %s",
+ php_error(E_WARNING, "%s() query failed: %s",
get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
RETURN_FALSE;
break;
@@ -2315,7 +2337,7 @@ PHP_FUNCTION(pg_copy_from)
}
if (PQendcopy(pgsql)) {
php_error(E_WARNING, "%s() query failed: %s",
- get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
+ get_active_function_name(TSRMLS_C), PQerrorMessage(pgsql));
RETURN_FALSE;
}
while ((pgsql_result = PQgetResult(pgsql))) {
@@ -2343,7 +2365,6 @@ PHP_FUNCTION(pg_copy_from)
PHP_FUNCTION(pg_escape_string)
{
char *from = NULL, *to = NULL;
- long type = PGSQL_ESCAPE_STRING;
int len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s",
&from, &len) == FAILURE) {
@@ -2363,7 +2384,6 @@ PHP_FUNCTION(pg_escape_string)
PHP_FUNCTION(pg_escape_bytea)
{
char *from = NULL, *to = NULL;
- long type = PGSQL_ESCAPE_STRING;
int len;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s",
&from, &len) == FAILURE) {
@@ -2484,7 +2504,8 @@ static void php_pgsql_do_async(INTERNAL_FUNCTION_PARAMETERS, int entry_type)
}
break;
default:
- php_error(E_ERROR,"Pgsql module error. Report this error");
+ php_error(E_ERROR,"%s() PostgreSQL module error. Report this error",
+ get_active_function_name(TSRMLS_C));
break;
}
if (PQsetnonblocking(pgsql, 0)) {