summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYasuo Ohgaki <yohgaki@php.net>2002-07-17 05:01:58 +0000
committerYasuo Ohgaki <yohgaki@php.net>2002-07-17 05:01:58 +0000
commita6384b368561386ab4a04eab5573fdcdb7b92c4c (patch)
tree942c273bf5e0a12719ba51b79b999880776e876b
parent166ace3fa904a9c10421b2cc1128a32cd965a28d (diff)
downloadphp-git-a6384b368561386ab4a04eab5573fdcdb7b92c4c.tar.gz
Added safe_mode & open_basedir checks for pg_lo_export()
@Added safe_mode & open_basedir checks for pg_lo_export() (Yasuo)
-rw-r--r--ext/pgsql/pgsql.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/ext/pgsql/pgsql.c b/ext/pgsql/pgsql.c
index 7979b11426..5eb5f90685 100644
--- a/ext/pgsql/pgsql.c
+++ b/ext/pgsql/pgsql.c
@@ -2091,6 +2091,14 @@ PHP_FUNCTION(pg_lo_export)
RETURN_FALSE;
}
+ if (PG(safe_mode) &&(!php_checkuid(file_in, NULL, CHECKUID_CHECK_FILE_AND_DIR))) {
+ RETURN_FALSE;
+ }
+
+ if (php_check_open_basedir(file_in TSRMLS_CC)) {
+ RETURN_FALSE;
+ }
+
ZEND_FETCH_RESOURCE2(pgsql, PGconn *, &pgsql_link, id, "PostgreSQL link", le_link, le_plink);
if (lo_export(pgsql, oid, file_out)) {