summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKalle Sommer Nielsen <kalle@php.net>2010-04-21 22:23:55 +0000
committerKalle Sommer Nielsen <kalle@php.net>2010-04-21 22:23:55 +0000
commit9d395a4a2b34ad7ed2ec37976bc33117cb3ec554 (patch)
treede8bc9809ac7e406fff17ded672005122b80bbe0
parent10e7361027f22bf6efe521cf218cdf7ff54e155e (diff)
downloadphp-git-9d395a4a2b34ad7ed2ec37976bc33117cb3ec554.tar.gz
Removed import_request_variables(), this is not needed anymore without register_globals
-rw-r--r--NEWS1
-rw-r--r--Zend/tests/unset_cv07.phpt2
-rw-r--r--ext/standard/basic_functions.c104
-rw-r--r--ext/standard/basic_functions.h2
-rw-r--r--ext/standard/tests/general_functions/import_request.phpt2
-rw-r--r--ext/standard/tests/general_functions/import_request1.phpt2
-rw-r--r--ext/standard/tests/general_functions/import_request2.phpt2
-rw-r--r--ext/standard/tests/general_functions/import_request3.phpt2
8 files changed, 11 insertions, 106 deletions
diff --git a/NEWS b/NEWS
index d3ac69a20e..ff76aa148f 100644
--- a/NEWS
+++ b/NEWS
@@ -32,6 +32,7 @@
- Removed legacy features: (Kalle)
. define_syslog_variables ini option and its associated function.
. highlight.bg ini option.
+ . import_request_variables().
. register_globals.
. register_long_arrays ini option.
. y2k_compliance ini option.
diff --git a/Zend/tests/unset_cv07.phpt b/Zend/tests/unset_cv07.phpt
index b7bdb7db5c..afa78189f7 100644
--- a/Zend/tests/unset_cv07.phpt
+++ b/Zend/tests/unset_cv07.phpt
@@ -1,5 +1,7 @@
--TEST--
unset() CV 7 (indirect unset() of global variable in import_request_variables())
+--SKIPIF--
+<?php if(PHP_VERSION_ID < 503099){ die('Not needed anymore without register_globals'); } ?>
--GET--
x=2
--FILE--
diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c
index 612afa3a41..4555814e17 100644
--- a/ext/standard/basic_functions.c
+++ b/ext/standard/basic_functions.c
@@ -855,11 +855,6 @@ ZEND_END_ARG_INFO()
ZEND_BEGIN_ARG_INFO(arginfo_config_get_hash, 0)
ZEND_END_ARG_INFO()
#endif
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_import_request_variables, 0, 0, 1)
- ZEND_ARG_INFO(0, types)
- ZEND_ARG_INFO(0, prefix)
-ZEND_END_ARG_INFO()
#ifdef HAVE_GETLOADAVG
ZEND_BEGIN_ARG_INFO(arginfo_sys_getloadavg, 0)
@@ -2946,7 +2941,6 @@ const zend_function_entry basic_functions[] = { /* {{{ */
PHP_FE(get_magic_quotes_gpc, arginfo_get_magic_quotes_gpc)
PHP_FE(get_magic_quotes_runtime, arginfo_get_magic_quotes_runtime)
- PHP_FE(import_request_variables, arginfo_import_request_variables)
PHP_FE(error_log, arginfo_error_log)
PHP_FE(error_get_last, arginfo_error_get_last)
PHP_FE(call_user_func, arginfo_call_user_func)
@@ -6026,104 +6020,6 @@ PHP_FUNCTION(config_get_hash) /* {{{ */
/* }}} */
#endif
-static int copy_request_variable(void *pDest TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key) /* {{{ */
-{
- zval *prefix, new_key;
- int prefix_len;
- zval **var = (zval **) pDest;
-
- if (num_args != 1) {
- return 0;
- }
-
- prefix = va_arg(args, zval *);
- prefix_len = Z_STRLEN_P(prefix);
-
- if (!prefix_len && !hash_key->nKeyLength) {
- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Numeric key detected - possible security hazard");
- return 0;
- }
-
- if (hash_key->nKeyLength) {
- php_prefix_varname(&new_key, prefix, hash_key->arKey, hash_key->nKeyLength - 1, 0 TSRMLS_CC);
- } else {
- zval num;
-
- ZVAL_LONG(&num, hash_key->h);
- convert_to_string(&num);
- php_prefix_varname(&new_key, prefix, Z_STRVAL(num), Z_STRLEN(num), 0 TSRMLS_CC);
- zval_dtor(&num);
- }
-
- if (php_varname_check(Z_STRVAL(new_key), Z_STRLEN(new_key), 0 TSRMLS_CC) == FAILURE) {
- zval_dtor(&new_key);
- return 0;
- }
-
- zend_delete_global_variable(Z_STRVAL(new_key), Z_STRLEN(new_key) TSRMLS_CC);
- ZEND_SET_SYMBOL_WITH_LENGTH(&EG(symbol_table), Z_STRVAL(new_key), Z_STRLEN(new_key) + 1, *var, Z_REFCOUNT_PP(var) + 1, 0);
-
- zval_dtor(&new_key);
- return 0;
-}
-/* }}} */
-
-/* {{{ proto bool import_request_variables(string types [, string prefix])
- Import GET/POST/Cookie variables into the global scope */
-PHP_FUNCTION(import_request_variables)
-{
- char *types;
- int types_len;
- zval *prefix = NULL;
- char *p;
- zend_bool ok = 0;
-
- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|z/", &types, &types_len, &prefix) == FAILURE) {
- return;
- }
-
- if (ZEND_NUM_ARGS() > 1) {
- convert_to_string(prefix);
-
- if (Z_STRLEN_P(prefix) == 0) {
- php_error_docref(NULL TSRMLS_CC, E_NOTICE, "No prefix specified - possible security hazard");
- }
- } else {
- MAKE_STD_ZVAL(prefix);
- ZVAL_EMPTY_STRING(prefix);
- }
-
- for (p = types; p && *p; p++) {
- switch (*p) {
-
- case 'g':
- case 'G':
- zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_GET]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix);
- ok = 1;
- break;
-
- case 'p':
- case 'P':
- zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_POST]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix);
- zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_FILES]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix);
- ok = 1;
- break;
-
- case 'c':
- case 'C':
- zend_hash_apply_with_arguments(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_COOKIE]) TSRMLS_CC, (apply_func_args_t) copy_request_variable, 1, prefix);
- ok = 1;
- break;
- }
- }
-
- if (ZEND_NUM_ARGS() < 2) {
- zval_ptr_dtor(&prefix);
- }
- RETURN_BOOL(ok);
-}
-/* }}} */
-
#ifdef HAVE_GETLOADAVG
/* {{{ proto array sys_getloadavg()
*/
diff --git a/ext/standard/basic_functions.h b/ext/standard/basic_functions.h
index a715d73112..e2190066f0 100644
--- a/ext/standard/basic_functions.h
+++ b/ext/standard/basic_functions.h
@@ -74,8 +74,6 @@ PHP_FUNCTION(set_magic_quotes_runtime);
PHP_FUNCTION(get_magic_quotes_runtime);
PHP_FUNCTION(get_magic_quotes_gpc);
-PHP_FUNCTION(import_request_variables);
-
PHP_FUNCTION(error_log);
PHP_FUNCTION(error_get_last);
diff --git a/ext/standard/tests/general_functions/import_request.phpt b/ext/standard/tests/general_functions/import_request.phpt
index 0067632391..9d4ee80372 100644
--- a/ext/standard/tests/general_functions/import_request.phpt
+++ b/ext/standard/tests/general_functions/import_request.phpt
@@ -1,5 +1,7 @@
--TEST--
import_request_variables() tests
+--SKIPIF--
+<?php if(PHP_VERSION_ID < 503099){ die('Not needed anymore without register_globals'); } ?>
--GET--
a=1&b=heh&c=3&d[]=5&GLOBALS=test&1=hm
--POST--
diff --git a/ext/standard/tests/general_functions/import_request1.phpt b/ext/standard/tests/general_functions/import_request1.phpt
index cb6df69e08..49259efaaa 100644
--- a/ext/standard/tests/general_functions/import_request1.phpt
+++ b/ext/standard/tests/general_functions/import_request1.phpt
@@ -1,5 +1,7 @@
--TEST--
import_request_variables() test (overwrite super-globals)
+--SKIPIF--
+<?php if(PHP_VERSION_ID < 503099){ die('Not needed anymore without register_globals'); } ?>
--GET--
GET=0&POST=1&COOKIE=2&FILES=3&REQUEST=4
--POST--
diff --git a/ext/standard/tests/general_functions/import_request2.phpt b/ext/standard/tests/general_functions/import_request2.phpt
index eb278217c0..b3522ddd12 100644
--- a/ext/standard/tests/general_functions/import_request2.phpt
+++ b/ext/standard/tests/general_functions/import_request2.phpt
@@ -1,5 +1,7 @@
--TEST--
import_request_variables() test (numeric keys)
+--SKIPIF--
+<?php if(PHP_VERSION_ID < 503099){ die('Not needed anymore without register_globals'); } ?>
--GET--
1=0&2=1&3=2&4=3&5=4
--POST--
diff --git a/ext/standard/tests/general_functions/import_request3.phpt b/ext/standard/tests/general_functions/import_request3.phpt
index a9fba26ddf..bfa21b3020 100644
--- a/ext/standard/tests/general_functions/import_request3.phpt
+++ b/ext/standard/tests/general_functions/import_request3.phpt
@@ -1,5 +1,7 @@
--TEST--
import_request_variables() test (numeric keys, different order)
+--SKIPIF--
+<?php if(PHP_VERSION_ID < 503099){ die('Not needed anymore without register_globals'); } ?>
--GET--
1=0&2=1&3=2&4=3&5=4
--POST--