http: response body often missing after specific request
authorScott Griepentrog <sgriepentrog@digium.com>
Fri, 28 Mar 2014 16:18:56 +0000 (16:18 +0000)
committerScott Griepentrog <sgriepentrog@digium.com>
Fri, 28 Mar 2014 16:18:56 +0000 (16:18 +0000)
commit0d057e67915d8d4f1b535d54bbcf5fb20a3e657f
tree697660b264a1c3bc360906ebf7ac1907410734db
parent2cfa9b4b772dbde48f8c0f7357341e9eea39311b
http: response body often missing after specific request

This patch works around a problem with the HTTP body
being dropped from the response to a specific client
and under specific circumstances:

a) Client request comes from node.js user agent
   "Shred" via use of swagger-client library.

b) Asterisk and Client are *not* on the same
   host or TCP/IP stack

In testing this problem, it has been determined that
the write of the HTTP body is lost, even if the data
is written using low level write function.  The only
solution found is to instruct the TCP stack with the
shutdown function to flush the last write and finish
the transmission.  See review for more details.

ASTERISK-23548 #close
(closes issue ASTERISK-23548)
Reported by: Sam Galarneau
Review: https://reviewboard.asterisk.org/r/3402/
........

Merged revisions 411462 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 411463 from http://svn.asterisk.org/svn/asterisk/branches/11
........

Merged revisions 411465 from http://svn.asterisk.org/svn/asterisk/branches/12

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@411469 65c4cc65-6c06-0410-ace0-fbb531ad65f3
main/http.c
main/manager.c
main/tcptls.c