diff options
author | Ben Ford <bford@digium.com> | 2017-10-25 09:23:55 -0500 |
---|---|---|
committer | Benjamin Keith Ford <bford@digium.com> | 2017-10-25 10:36:21 -0500 |
commit | 3821be1c68a3f14f35ce04429f6ced27c0162032 (patch) | |
tree | 8a2a6cbc4deb5a553ac985467f85dd61d39e1488 | |
parent | 65357091d868f2652432506b0b6ff81ef273a8a2 (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
-rw-r--r-- | main/http.c | 6 |
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)); |