summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2017-09-05 18:13:50 +0200
committerNikita Popov <nikita.ppv@gmail.com>2017-09-05 18:13:50 +0200
commit42549b7844472a896dbd51b8305a835e731ecb25 (patch)
treef2916797089922b5e5b959259df1ac871d67613d
parentcd9d90f4d41c87494dee8ee72c7a48951213296b (diff)
downloadphp-git-42549b7844472a896dbd51b8305a835e731ecb25.tar.gz
Add missing null termination
-rw-r--r--sapi/cli/php_cli_server.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sapi/cli/php_cli_server.c b/sapi/cli/php_cli_server.c
index 4d5324f36c..39ded2f5b3 100644
--- a/sapi/cli/php_cli_server.c
+++ b/sapi/cli/php_cli_server.c
@@ -1611,12 +1611,14 @@ static int php_cli_server_client_read_request_on_header_field(php_http_parser *p
size_t new_length = client->current_header_name_len + length;
client->current_header_name = perealloc(client->current_header_name, new_length + 1, 1);
memcpy(client->current_header_name + client->current_header_name_len, at, length);
+ client->current_header_name[new_length] = '\0';
client->current_header_name_len = new_length;
} else {
size_t new_length = client->current_header_name_len + length;
char* field = pemalloc(new_length + 1, 1);
memcpy(field, client->current_header_name, client->current_header_name_len);
memcpy(field + client->current_header_name_len, at, length);
+ field[new_length] = '\0';
client->current_header_name = field;
client->current_header_name_len = new_length;
client->current_header_name_allocated = 1;
@@ -1641,6 +1643,7 @@ static int php_cli_server_client_read_request_on_header_value(php_http_parser *p
size_t new_length = client->current_header_value_len + length;
client->current_header_value = perealloc(client->current_header_value, new_length + 1, 1);
memcpy(client->current_header_value + client->current_header_value_len, at, length);
+ client->current_header_value[new_length] = '\0';
client->current_header_value_len = new_length;
}
break;