From 11a202ef50fdcd92b5cc3b3e1d5a739cd85b7541 Mon Sep 17 00:00:00 2001 From: stealth35 Date: Sat, 16 Jun 2012 00:56:54 +0300 Subject: Fix potential leak in cli server --- sapi/cli/php_cli_server.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'sapi/cli/php_cli_server.c') diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c index 87ab7b48f4..876c57a34d 100644 --- a/sapi/cli/php_cli_server.c +++ b/sapi/cli/php_cli_server.c @@ -1826,6 +1826,9 @@ static int php_cli_server_send_error_page(php_cli_server *server, php_cli_server return SUCCESS; fail: + if (errstr) { + pefree(errstr, 1); + } efree(escaped_request_uri); return FAILURE; } /* }}} */ -- cgit v1.2.1 From a88eca53f708602384cae147a8376352d5909d90 Mon Sep 17 00:00:00 2001 From: Xinchen Hui Date: Sun, 22 Jul 2012 19:20:23 +0800 Subject: Improve error message for ssl request --- sapi/cli/php_cli_server.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'sapi/cli/php_cli_server.c') diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c index 876c57a34d..02f885484f 100644 --- a/sapi/cli/php_cli_server.c +++ b/sapi/cli/php_cli_server.c @@ -1618,7 +1618,11 @@ static int php_cli_server_client_read_request(php_cli_server_client *client, cha client->parser.data = client; nbytes_consumed = php_http_parser_execute(&client->parser, &settings, buf, nbytes_read); if (nbytes_consumed != nbytes_read) { - *errstr = estrdup("Malformed HTTP request"); + if (buf[0] & 0x80 /* SSLv2 */ || buf[0] == 0x16 /* SSLv3/TLSv1 */) { + *errstr = estrdup("Unsupported SSL request"); + } else { + *errstr = estrdup("Malformed HTTP request"); + } return -1; } if (client->current_header_name) { -- cgit v1.2.1 From 0988ae3c43982db1474dd7e9a772953c8a7cf0c6 Mon Sep 17 00:00:00 2001 From: Xinchen Hui Date: Tue, 31 Jul 2012 22:42:28 +0800 Subject: Implemented FR #62700 (have the console output 'Listening on http://localhost:8000') --- sapi/cli/php_cli_server.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sapi/cli/php_cli_server.c') diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c index 02f885484f..e80ab68f80 100644 --- a/sapi/cli/php_cli_server.c +++ b/sapi/cli/php_cli_server.c @@ -2407,7 +2407,7 @@ int do_cli_server(int argc, char **argv TSRMLS_DC) /* {{{ */ php_localtime_r(&tv.tv_sec, &tm); php_asctime_r(&tm, buf); printf("PHP %s Development Server started at %s" - "Listening on %s\n" + "Listening on http://%s\n" "Document root is %s\n" "Press Ctrl-C to quit.\n", PHP_VERSION, buf, server_bind_address, document_root); -- cgit v1.2.1 From 27542db4e70c388346fc9983b9c7d58248aaa52d Mon Sep 17 00:00:00 2001 From: Niklas Lindgren Date: Wed, 12 Sep 2012 19:34:59 +0300 Subject: Respond with 501 to unknown request methods Fixed typo Moved 501 response from dispatch to event_read_request Return return value of send_error_page --- sapi/cli/php_cli_server.c | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) (limited to 'sapi/cli/php_cli_server.c') diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c index e80ab68f80..4d15db44af 100644 --- a/sapi/cli/php_cli_server.c +++ b/sapi/cli/php_cli_server.c @@ -116,7 +116,7 @@ typedef struct php_cli_server_poller { } php_cli_server_poller; typedef struct php_cli_server_request { - enum php_http_method request_method; + enum php_http_method request_method; int protocol_version; char *request_uri; size_t request_uri_len; @@ -247,7 +247,8 @@ static php_cli_server_http_reponse_status_code_pair status_map[] = { static php_cli_server_http_reponse_status_code_pair template_map[] = { { 400, "

%s

Your browser sent a request that this server could not understand.

" }, { 404, "

%s

The requested resource %s was not found on this server.

" }, - { 500, "

%s

The server is temporality unavaiable.

" } + { 500, "

%s

The server is temporarily unavailable.

" }, + { 501, "

%s

Request method not supported.

" } }; static php_cli_server_ext_mime_type_pair mime_type_map[] = { @@ -275,7 +276,7 @@ static void php_cli_server_log_response(php_cli_server_client *client, int statu ZEND_DECLARE_MODULE_GLOBALS(cli_server); -/* {{{ static char php_cli_server_css[] +/* {{{ static char php_cli_server_css[] * copied from ext/standard/info.c */ static const char php_cli_server_css[] = "