cvs: /php4 cgi_main.c main.c /php4/ext/standard basic_functions.c info.c info.h
| From: | Zeev Suraski | 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, ...);