}
+static void php_print_gpcse_array(char *name, uint name_length ELS_DC)
+{
+ zval **data, **tmp;
+ char *string_key;
+ ulong num_key;
+
+ if (zend_hash_find(&EG(symbol_table), name, name_length+1, (void **) &data)!=FAILURE
+ && ((*data)->type==IS_ARRAY)) {
+ zend_hash_internal_pointer_reset((*data)->value.ht);
+ while (zend_hash_get_current_data((*data)->value.ht, (void **) &tmp) == SUCCESS) {
+ zval tmp2, *value_ptr;
+
+ if ((*tmp)->type != IS_STRING) {
+ tmp2 = **tmp;
+ zval_copy_ctor(&tmp2);
+ convert_to_string(&tmp2);
+ value_ptr = &tmp2;
+ } else {
+ value_ptr = *tmp;
+ }
+ PUTS("<tr><td bgcolor=\"" PHP_ENTRY_NAME_COLOR "\"><b>");
+ PUTS(name);
+ PUTS("[\"");
+ switch (zend_hash_get_current_key((*data)->value.ht, &string_key, &num_key)) {
+ case HASH_KEY_IS_STRING:
+ PUTS(string_key);
+ efree(string_key);
+ break;
+ case HASH_KEY_IS_LONG:
+ php_printf("%ld",num_key);
+ break;
+ }
+ PUTS("\"]</b></td><td bgcolor=\"" PHP_CONTENTS_COLOR "\">");
+ if ((*tmp)->type == IS_ARRAY) {
+ PUTS("<pre>");
+ zend_print_zval_r(*tmp, 0);
+ PUTS("</pre>");
+ } else {
+ PUTS(value_ptr->value.str.val);
+ }
+ PUTS("</td></tr>\n");
+ zend_hash_move_forward((*data)->value.ht);
+ if (value_ptr==&tmp2) {
+ zval_dtor(value_ptr);
+ }
+ }
+ }
+}
+
+
PHPAPI void php_print_info(int flag)
{
char **env,*tmp1,*tmp2;
}
if (flag & PHP_INFO_VARIABLES) {
- pval **data, **tmp;
- char *string_key;
- ulong num_key;
+ pval **data;
SECTION("PHP Variables");
if (zend_hash_find(&EG(symbol_table), "PHP_AUTH_PW", sizeof("PHP_AUTH_PW"), (void **) &data) != FAILURE) {
php_info_print_table_row(2, "PHP_AUTH_PW", (*data)->value.str.val);
}
- if (zend_hash_find(&EG(symbol_table), "HTTP_GET_VARS", sizeof("HTTP_GET_VARS"), (void **) &data)!=FAILURE
- && ((*data)->type==IS_ARRAY)) {
- zend_hash_internal_pointer_reset((*data)->value.ht);
- while (zend_hash_get_current_data((*data)->value.ht, (void **) &tmp) == SUCCESS) {
- zval tmp2, *value_ptr;
-
- if ((*tmp)->type != IS_STRING) {
- tmp2 = **tmp;
- zval_copy_ctor(&tmp2);
- convert_to_string(&tmp2);
- value_ptr = &tmp2;
- } else {
- value_ptr = *tmp;
- }
- PUTS("<tr><td bgcolor=\"" PHP_ENTRY_NAME_COLOR "\"><b>HTTP_GET_VARS[\"");
- switch (zend_hash_get_current_key((*data)->value.ht, &string_key, &num_key)) {
- case HASH_KEY_IS_STRING:
- PUTS(string_key);
- efree(string_key);
- break;
- case HASH_KEY_IS_LONG:
- php_printf("%ld",num_key);
- break;
- }
- PUTS("\"]</b></td><td bgcolor=\"" PHP_CONTENTS_COLOR "\">");
- if ((*tmp)->type == IS_ARRAY) {
- PUTS("<pre>");
- zend_print_zval_r(*tmp, 0);
- PUTS("</pre>");
- } else {
- PUTS(value_ptr->value.str.val);
- }
- PUTS("</td></tr>\n");
- zend_hash_move_forward((*data)->value.ht);
- if (value_ptr==&tmp2) {
- zval_dtor(value_ptr);
- }
- }
- }
- if (zend_hash_find(&EG(symbol_table), "HTTP_POST_VARS", sizeof("HTTP_POST_VARS"), (void **) &data)!=FAILURE
- && ((*data)->type==IS_ARRAY)) {
- zend_hash_internal_pointer_reset((*data)->value.ht);
- while (zend_hash_get_current_data((*data)->value.ht, (void **) &tmp) == SUCCESS) {
- convert_to_string(*tmp);
- PUTS("<tr><td bgcolor=\"" PHP_ENTRY_NAME_COLOR "\"><b>HTTP_POST_VARS[\"");
- switch (zend_hash_get_current_key((*data)->value.ht, &string_key, &num_key)) {
- case HASH_KEY_IS_STRING:
- PUTS(string_key);
- efree(string_key);
- break;
- case HASH_KEY_IS_LONG:
- php_printf("%ld",num_key);
- break;
- }
- PUTS("\"]</b></td><td bgcolor=\"" PHP_CONTENTS_COLOR "\">");
- PUTS((*tmp)->value.str.val);
- PUTS("</td></tr>\n");
- zend_hash_move_forward((*data)->value.ht);
- }
- }
- if (zend_hash_find(&EG(symbol_table), "HTTP_COOKIE_VARS", sizeof("HTTP_COOKIE_VARS"), (void **) &data)!=FAILURE
- && ((*data)->type==IS_ARRAY)) {
- zend_hash_internal_pointer_reset((*data)->value.ht);
- while (zend_hash_get_current_data((*data)->value.ht, (void **) &tmp) == SUCCESS) {
- convert_to_string(*tmp);
- PUTS("<tr><td bgcolor=\"" PHP_ENTRY_NAME_COLOR "\"><b>HTTP_COOKIE_VARS[\"");
- switch (zend_hash_get_current_key((*data)->value.ht, &string_key, &num_key)) {
- case HASH_KEY_IS_STRING:
- PUTS(string_key);
- efree(string_key);
- break;
- case HASH_KEY_IS_LONG:
- php_printf("%ld",num_key);
- break;
- }
- PUTS("\"]</b></td><td bgcolor=\"" PHP_CONTENTS_COLOR "\">");
- PUTS((*tmp)->value.str.val);
- PUTS("</td></tr>\n");
- zend_hash_move_forward((*data)->value.ht);
- }
- }
+ php_print_gpcse_array("HTTP_GET_VARS", sizeof("HTTP_GET_VARS")-1 ELS_CC);
+ php_print_gpcse_array("HTTP_POST_VARS", sizeof("HTTP_POST_VARS")-1 ELS_CC);
+ php_print_gpcse_array("HTTP_COOKIE_VARS", sizeof("HTTP_COOKIE_VARS")-1 ELS_CC);
+ php_print_gpcse_array("HTTP_SERVER_VARS", sizeof("HTTP_SERVER_VARS")-1 ELS_CC);
+ php_print_gpcse_array("HTTP_ENV_VARS", sizeof("HTTP_ENV_VARS")-1 ELS_CC);
PUTS("</table>\n");
}