I'm probably going to be using CSOAP in a project and one of the needs
of the project is to have HTTP Keepalives so that we can stream
requests without having to pay the cost of setting up the TCP/IP and
SSL negotiation continually. I'd would like to contribute the
keepalive changes upstream so that they could be more generally
useful, but I've come on an API question which I'd appreciate an
opinion on to improve the chances that it will be accepted.
My needs only extent to the client-side, so that's all I've been
doing. So far, I've added keepalives to the nanohttp library and
example fairly nicely, but the soap_client_invoke API is less
convenient because the connection is created and destroyed internally.
My thought is perhaps to adjust SoapCtx to allow the connection to be
stored inside, with a new call to store it. My end-goal is that one
single connection could be used on several different RESTful and SOAPy
However, this API doesn't exactly stand out as a beacon of
cleanliness. Another option would be to adjust soap_client_invoke (or
add soap_client_conn_invoke to which soap_client_invoke is a wrapper).
If anyone has any strong opinions on the matter, please let me know.