cvs: /php4 cgi_main.c main.c /php4/ext/standard basic_functions.c info.c info.h

From: Date: Sat, 17 Jul 1999 15:17:43 +0000
Subject: cvs: /php4 cgi_main.c main.c /php4/ext/standard basic_functions.c info.c info.h
Groups: php.version4 
Request: Send a blank email to php-version4+get-2199@lists.php.net to get a copy of this message
zeev Sat Jul 17 15:17:43 1999 EDT Modified files: /php4 cgi_main.c main.c /php4/ext/standard basic_functions.c info.c info.h Log: I was sure I committed these already. Weird Index: php4/cgi_main.c diff -u php4/cgi_main.c:1.23 php4/cgi_main.c:1.24 --- php4/cgi_main.c:1.23 Fri Jul 16 09:12:41 1999 +++ php4/cgi_main.c Sat Jul 17 15:17:42 1999 @@ -331,7 +331,7 @@ } cgi_started=1; php3_TreatHeaders(); - _php3_info(0xFFFFFFFF); + php_print_info(0xFFFFFFFF); exit(1); break; case 's': Index: php4/main.c diff -u php4/main.c:1.84 php4/main.c:1.85 --- php4/main.c:1.84 Fri Jul 16 09:12:41 1999 +++ php4/main.c Sat Jul 17 15:17:42 1999 @@ -19,7 +19,7 @@ */ -/* $Id: main.c,v 1.84 1999/07/16 13:12:41 zeev Exp $ */ +/* $Id: main.c,v 1.85 1999/07/17 19:17:42 zeev Exp $ */ #include <stdio.h> @@ -1085,6 +1085,9 @@ php4i_add_header_information(header_line, sizeof(CONTEXT_TYPE_IMAGE_GIF)-1); PHPWRITE(zend_logo, sizeof(zend_logo)); + return; + } else if (!strcmp(SG(request_info).query_string+1, "PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000")) { + php_print_credits(PHP_CREDITS_ALL); return; } } Index: php4/ext/standard/basic_functions.c diff -u php4/ext/standard/basic_functions.c:1.45 php4/ext/standard/basic_functions.c:1.46 --- php4/ext/standard/basic_functions.c:1.45 Fri Jul 16 16:47:20 1999 +++ php4/ext/standard/basic_functions.c Sat Jul 17 15:17:42 1999 @@ -122,8 +122,9 @@ {"parse_url", php3_parse_url, NULL}, {"parse_str", php3_parsestr, NULL}, - {"phpinfo", php3_info, NULL}, - {"phpversion", php3_version, NULL}, + PHP_FE(phpinfo, NULL) + PHP_FE(phpversion, NULL) + PHP_FE(phpcredits, NULL) {"strlen", php3_strlen, NULL}, {"strcmp", php3_strcmp, NULL}, {"strspn", php3_strspn, NULL}, Index: php4/ext/standard/info.c diff -u php4/ext/standard/info.c:1.19 php4/ext/standard/info.c:1.20 --- php4/ext/standard/info.c:1.19 Sat Jul 17 13:33:42 1999 +++ php4/ext/standard/info.c Sat Jul 17 15:17:42 1999 @@ -47,7 +47,7 @@ } -PHPAPI void _php3_info(int flag) +PHPAPI void php_print_info(int flag) { char **env,*tmp1,*tmp2; char *php3_uname; @@ -106,62 +106,13 @@ PUTS("<center>"); if (flag & PHP_INFO_CREDITS) { - PUTS("<h1>Credits</h1>\n"); - - /* Language */ - PUTS("<table border=5 width=\"600\">\n"); - PUTS("<tr><th colspan=\"2\" bgcolor=\"" PHP_HEADER_COLOR "\">PHP 4.0 Authors</th></tr>\n"); - php_info_print_table_header(2, "Contribution", "Authors"); - CREDIT_LINE("Zend Scripting Language Engine", "Andi Gutmans, Zeev Suraski"); - CREDIT_LINE("Extension Module API", "Andi Gutmans, Zeev Suraski"); - CREDIT_LINE("UNIX Build and Modularization", "Stig Sather Bakken"); - CREDIT_LINE("Win32 Port", "Shane Caraveo, Zeev Suraski"); - CREDIT_LINE("Server API (SAPI) Abstraction Layer", "Andi Gutmans, Shane Caraveo, Zeev Suraski"); - CREDIT_LINE("Apache SAPI Module", "Rasmus Lerdorf, Zeev Suraski"); - CREDIT_LINE("ISAPI SAPI Module", "Andi Gutmans, Zeev Suraski"); - CREDIT_LINE("CGI SAPI Module", "Rasmus Lerdorf, Stig Sather Bakken"); - PUTS("</table>\n"); - - /* Modules */ - PUTS("<table border=5 width=\"600\">\n"); - PUTS("<tr><th colspan=\"2\" bgcolor=\"" PHP_HEADER_COLOR "\">Module Authors</th></tr>\n"); - php_info_print_table_header(2, "Module", "Authors"); - CREDIT_LINE("Apache", "Rasmus Lerdorf, Stig Sather Bakken, David Sklar"); - CREDIT_LINE("BC Math", "Andi Gutmans"); - CREDIT_LINE("Win32 COM", "Zeev Suraski"); - CREDIT_LINE("DAV", "Stig Sather Bakken"); - CREDIT_LINE("DBM", "Rasmus Lerdorf, Jim Winstead"); - CREDIT_LINE("dBase", "Jim Winstead"); - CREDIT_LINE("FDF", "Uwe Steinmann"); - CREDIT_LINE("FilePro", "Chad Robinson"); - CREDIT_LINE("GD imaging", "Rasmus Lerdorf, Stig Sather Bakken, Jim Winstead"); - CREDIT_LINE("GetText", "Alex Plotnick"); - CREDIT_LINE("HyperWave", "Uwe Steinmann"); - CREDIT_LINE("IMAP", "Rex Logan, Mark Musone, Brian Wang, Kaj-Michael Lang, Antoni Pamies Olive, Rasmus Lerdorf"); - CREDIT_LINE("Informix", "Danny Heijl, Christian Cartus, Jouni Ahto"); - CREDIT_LINE("Interbase", "Jouni Ahto"); - CREDIT_LINE("LDAP", "Amitay Isaacs, Eric Warnke, Rasmus Lerdorf, Gerrit Thomson"); - CREDIT_LINE("mcrypt", "Sascha Schumann"); - CREDIT_LINE("mhash", "Sascha Schumann"); - CREDIT_LINE("mSQL", "Zeev Suraski"); - CREDIT_LINE("MySQL", "Zeev Suraski"); - CREDIT_LINE("OCI8", "Stig Sather Bakken, Thies C. Arntzen"); - CREDIT_LINE("ODBC", "Stig Sather Bakken, Andreas Karajannis, Frank M. Kromann"); - CREDIT_LINE("Oracle", "Stig Sather Bakken, Mitch Golden, Rasmus Lerdorf, Andreas Karajannis, Thies C. Arntzen"); - CREDIT_LINE("Perl Compatible Regexps", "Andrey Zmievski"); - CREDIT_LINE("PDF", "Uwe Steinmann"); - CREDIT_LINE("PostgreSQL", "Jouni Ahto, Zeev Suraski"); - CREDIT_LINE("Sessions", "Sascha Schumann"); - CREDIT_LINE("SNMP", "Rasmus Lerdorf"); - CREDIT_LINE("Sybase", "Zeev Suraski"); - CREDIT_LINE("System V Shared Memory", "Christian Cartus"); - CREDIT_LINE("System V Semaphores", "Tom May"); - CREDIT_LINE("XML", "Stig Sather Bakken"); - CREDIT_LINE("Yellow Pages", "Stephanie Wehner"); - CREDIT_LINE("Zlib", "Rasmus Lerdorf, Stefan Ruhrich"); - PUTS("</table>\n"); - - /* Documentation */ + PUTS("<a href=\""); + if (SG(request_info).request_uri) { + PUTS(SG(request_info).request_uri); + } + PUTS("?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000\">"); + PUTS("<h1>PHP 4.0 Credits</h1>\n"); + PUTS("</a>\n"); } @@ -296,6 +247,81 @@ } +void php_print_credits(int flag) +{ + if (flag & PHP_CREDITS_FULLPAGE) { + PUTS("<html><head><title>PHP Credits</title></head><body>\n"); + } + + PUTS("<h1>Credits</h1>\n"); + + if (flag & PHP_CREDITS_GENERAL) { + /* Language */ + PUTS("<table border=5 width=\"600\">\n"); + PUTS("<tr><th colspan=\"2\" bgcolor=\"" PHP_HEADER_COLOR "\">PHP 4.0 Authors</th></tr>\n"); + php_info_print_table_header(2, "Contribution", "Authors"); + CREDIT_LINE("Zend Scripting Language Engine", "Andi Gutmans, Zeev Suraski"); + CREDIT_LINE("Extension Module API", "Andi Gutmans, Zeev Suraski"); + CREDIT_LINE("UNIX Build and Modularization", "Stig Sather Bakken"); + CREDIT_LINE("Win32 Port", "Shane Caraveo, Zeev Suraski"); + CREDIT_LINE("Server API (SAPI) Abstraction Layer", "Andi Gutmans, Shane Caraveo, Zeev Suraski"); + CREDIT_LINE("Apache SAPI Module", "Rasmus Lerdorf, Zeev Suraski"); + CREDIT_LINE("ISAPI SAPI Module", "Andi Gutmans, Zeev Suraski"); + CREDIT_LINE("CGI SAPI Module", "Rasmus Lerdorf, Stig Sather Bakken"); + PUTS("</table>\n"); + } + + if (flag & PHP_CREDITS_MODULES) { + /* Modules */ + PUTS("<table border=5 width=\"600\">\n"); + PUTS("<tr><th colspan=\"2\" bgcolor=\"" PHP_HEADER_COLOR "\">Module Authors</th></tr>\n"); + php_info_print_table_header(2, "Module", "Authors"); + CREDIT_LINE("Apache", "Rasmus Lerdorf, Stig Sather Bakken, David Sklar"); + CREDIT_LINE("BC Math", "Andi Gutmans"); + CREDIT_LINE("Win32 COM", "Zeev Suraski"); + CREDIT_LINE("DAV", "Stig Sather Bakken"); + CREDIT_LINE("DBM", "Rasmus Lerdorf, Jim Winstead"); + CREDIT_LINE("dBase", "Jim Winstead"); + CREDIT_LINE("FDF", "Uwe Steinmann"); + CREDIT_LINE("FilePro", "Chad Robinson"); + CREDIT_LINE("GD imaging", "Rasmus Lerdorf, Stig Sather Bakken, Jim Winstead"); + CREDIT_LINE("GetText", "Alex Plotnick"); + CREDIT_LINE("HyperWave", "Uwe Steinmann"); + CREDIT_LINE("IMAP", "Rex Logan, Mark Musone, Brian Wang, Kaj-Michael Lang, Antoni Pamies Olive, Rasmus Lerdorf"); + CREDIT_LINE("Informix", "Danny Heijl, Christian Cartus, Jouni Ahto"); + CREDIT_LINE("Interbase", "Jouni Ahto"); + CREDIT_LINE("LDAP", "Amitay Isaacs, Eric Warnke, Rasmus Lerdorf, Gerrit Thomson"); + CREDIT_LINE("mcrypt", "Sascha Schumann"); + CREDIT_LINE("mhash", "Sascha Schumann"); + CREDIT_LINE("mSQL", "Zeev Suraski"); + CREDIT_LINE("MySQL", "Zeev Suraski"); + CREDIT_LINE("OCI8", "Stig Sather Bakken, Thies C. Arntzen"); + CREDIT_LINE("ODBC", "Stig Sather Bakken, Andreas Karajannis, Frank M. Kromann"); + CREDIT_LINE("Oracle", "Stig Sather Bakken, Mitch Golden, Rasmus Lerdorf, Andreas Karajannis, Thies C. Arntzen"); + CREDIT_LINE("Perl Compatible Regexps", "Andrey Zmievski"); + CREDIT_LINE("PDF", "Uwe Steinmann"); + CREDIT_LINE("PostgreSQL", "Jouni Ahto, Zeev Suraski"); + CREDIT_LINE("Sessions", "Sascha Schumann"); + CREDIT_LINE("SNMP", "Rasmus Lerdorf"); + CREDIT_LINE("Sybase", "Zeev Suraski"); + CREDIT_LINE("System V Shared Memory", "Christian Cartus"); + CREDIT_LINE("System V Semaphores", "Tom May"); + CREDIT_LINE("XML", "Stig Sather Bakken"); + CREDIT_LINE("Yellow Pages", "Stephanie Wehner"); + CREDIT_LINE("Zlib", "Rasmus Lerdorf, Stefan Ruhrich"); + PUTS("</table>\n"); + } + + if (flag & PHP_CREDITS_DOCS) { + /* Documentation */ + } + + if (flag & PHP_CREDITS_FULLPAGE) { + PUTS("</body></html>\n"); + } +} + + PHPAPI void php_info_print_table_header(int num_cols, ...) { int i; @@ -361,7 +387,7 @@ /* {{{ proto void phpinfo(void) Output a page of useful information about PHP and the current request */ -PHP_FUNCTION(info) +PHP_FUNCTION(phpinfo) { int flag; zval *flag_arg; @@ -382,16 +408,45 @@ WRONG_PARAM_COUNT; break; } - _php3_info(flag); + php_print_info(flag); RETURN_TRUE; } /* }}} */ /* {{{ proto string phpversion(void) Return the current PHP version */ -PHP_FUNCTION(version) +PHP_FUNCTION(phpversion) { RETURN_STRING(PHP_VERSION,1); +} +/* }}} */ + + +/* {{{ proto void phpcredits(int) + Prints the list of people who've contributed to the PHP project */ +PHP_FUNCTION(phpcredits) +{ + int flag; + zval *flag_arg; + + + switch (ARG_COUNT(ht)) { + case 0: + flag = 0xFFFFFFFF; + break; + case 1: + if (getParameters(ht, 1, &flag_arg)==FAILURE) { + RETURN_FALSE; + } + convert_to_long(flag_arg); + flag = flag_arg->value.lval; + break; + default: + WRONG_PARAM_COUNT; + break; + } + php_print_credits(flag); + RETURN_TRUE; } /* }}} */ Index: php4/ext/standard/info.h diff -u php4/ext/standard/info.h:1.6 php4/ext/standard/info.h:1.7 --- php4/ext/standard/info.h:1.6 Wed Jul 14 12:02:10 1999 +++ php4/ext/standard/info.h Sat Jul 17 15:17:42 1999 @@ -27,7 +27,7 @@ | Zeev Suraski <zeev@zend.com> | +----------------------------------------------------------------------+ */ -/* $Id: info.h,v 1.6 1999/07/14 16:02:10 andi Exp $ */ +/* $Id: info.h,v 1.7 1999/07/17 19:17:42 zeev Exp $ */ #ifndef _INFO_H #define _INFO_H @@ -43,12 +43,21 @@ #define PHP_INFO_ENVIRONMENT (1<<4) #define PHP_INFO_VARIABLES (1<<5) #define PHP_INFO_LICENSE (1<<6) +#define PHP_INFO_ALL 0xFFFFFFFF -#define PHP_INFO_ALL 0xFFFFFFFF -PHP_FUNCTION(version); -PHP_FUNCTION(info); -PHPAPI void _php3_info(int flag); +#define PHP_CREDITS_GENERAL (1<<0) +#define PHP_CREDITS_MODULES (1<<1) +#define PHP_CREDITS_DOCS (1<<2) +#define PHP_CREDITS_FULLPAGE (1<<3) +#define PHP_CREDITS_ALL 0xFFFFFFFF + +PHP_FUNCTION(phpversion); +PHP_FUNCTION(phpinfo); +PHP_FUNCTION(phpcredits); +PHPAPI void php_print_info(int flag); +PHPAPI void php_print_credits(int flag); + PHPAPI void php_info_print_table_header(int num_cols, ...); PHPAPI void php_info_print_table_row(int num_cols, ...);

« previous php.version4 (#2199) next »