summaryrefslogtreecommitdiff
path: root/main/http.c
diff options
context:
space:
mode:
authorBen Ford <bford@digium.com>2017-10-25 09:23:55 -0500
committerBenjamin Keith Ford <bford@digium.com>2017-10-25 10:36:21 -0500
commit3821be1c68a3f14f35ce04429f6ced27c0162032 (patch)
tree8a2a6cbc4deb5a553ac985467f85dd61d39e1488 /main/http.c
parent65357091d868f2652432506b0b6ff81ef273a8a2 (diff)
http.c: Fix http header send content.
Currently ast_http_send barricades a portion of the content that needs to be sent in order to establish a connection for things like the ARI client. The conditional and contents have been changed to ensure that everything that needs to be sent, will be sent. ASTERISK-27372 Change-Id: I8816d2d8f80f4fefc6dcae4b5fdfc97f1e46496d
Diffstat (limited to 'main/http.c')
-rw-r--r--main/http.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/main/http.c b/main/http.c
index 7191eb524..30b2fe2c4 100644
--- a/main/http.c
+++ b/main/http.c
@@ -529,10 +529,8 @@ void ast_http_send(struct ast_tcptls_session_instance *ser,
) <= 0) {
ast_debug(1, "ast_iostream_printf() failed: %s\n", strerror(errno));
close_connection = 1;
- }
-
- /* send content */
- if (!close_connection && send_content && fd) {
+ } else if (send_content && fd) {
+ /* send file content */
while ((len = read(fd, buf, sizeof(buf))) > 0) {
if (ast_iostream_write(ser->stream, buf, len) != len) {
ast_debug(1, "ast_iostream_write() failed: %s\n", strerror(errno));