From: foobar Date: Tue, 9 Sep 2003 21:42:57 +0000 (+0000) Subject: MFH: runtime apache version X-Git-Tag: php-4.3.4RC1~78 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e56b9397d922e87e5de6bc54873a5d0a93e48a86;p=php MFH: runtime apache version --- diff --git a/sapi/apache/php_apache.c b/sapi/apache/php_apache.c index 304ee75d05..81d2822c5a 100644 --- a/sapi/apache/php_apache.c +++ b/sapi/apache/php_apache.c @@ -44,6 +44,7 @@ PHP_FUNCTION(apache_note); PHP_FUNCTION(apache_lookup_uri); PHP_FUNCTION(apache_child_terminate); PHP_FUNCTION(apache_setenv); +PHP_FUNCTION(apache_get_version); PHP_MINFO_FUNCTION(apache); @@ -55,6 +56,7 @@ function_entry apache_functions[] = { PHP_FE(apache_child_terminate, NULL) PHP_FE(apache_setenv, NULL) PHP_FE(apache_response_headers, NULL) + PHP_FE(apache_get_version, NULL) PHP_FALIAS(getallheaders, apache_request_headers, NULL) {NULL, NULL, NULL} }; @@ -74,7 +76,6 @@ static void php_apache_globals_ctor(php_apache_info_struct *apache_globals TSRML apache_globals->in_request = 0; } - static PHP_MINIT_FUNCTION(apache) { #ifdef ZTS @@ -158,6 +159,7 @@ PHP_FUNCTION(apache_note) */ PHP_MINFO_FUNCTION(apache) { + char *apv = (char *) ap_get_server_version(); module *modp = NULL; char output_buf[128]; #if !defined(WIN32) && !defined(WINNT) @@ -174,7 +176,6 @@ PHP_MINFO_FUNCTION(apache) serv = ((request_rec *) SG(server_context))->server; - php_info_print_table_start(); #ifdef PHP_WIN32 @@ -190,7 +191,9 @@ PHP_MINFO_FUNCTION(apache) php_info_print_table_row(2, "APACHE_TARGET", PHP_APACHE_TARGET); #endif - php_info_print_table_row(2, "Apache Version", SERVER_VERSION); + if (apv && *apv) { + php_info_print_table_row(2, "Apache Version", apv); + } #ifdef APACHE_RELEASE sprintf(output_buf, "%d", APACHE_RELEASE); @@ -474,6 +477,19 @@ PHP_FUNCTION(apache_lookup_uri) } /* }}} */ +/* {{{ proto string apache_get_version(void) + Fetch Apache version */ +PHP_FUNCTION(apache_get_version) +{ + char *apv = (char *) ap_get_server_version(); + + if (apv && *apv) { + RETURN_STRING(apv, 1); + } else { + RETURN_FALSE; + } +} +/* }}} */ #if 0 This function is most likely a bad idea. Just playing with it for now.