1
0
Fork 0
mirror of https://github.com/warmcat/libwebsockets.git synced 2025-03-09 00:00:04 +01:00

add LWS_CALLBACK_CLOSED_HTTP

Adds a callback to allow handling HTTP protocol connections
closing.

Signed-off-by: Andy Green <andy.green@linaro.org>
This commit is contained in:
Andy Green 2013-06-10 22:54:40 +08:00
parent 7cf6cb00c2
commit 0c9563bbd2
3 changed files with 8 additions and 0 deletions

View file

@ -28,6 +28,9 @@ User api additions
then does not have to try to track while connections it choked, this
will free up all of them in one call.
- there's a new, optional callback LWS_CALLBACK_CLOSED_HTTP which gets
called when an HTTP protocol socket closes
User api changes
----------------

View file

@ -210,6 +210,8 @@ libwebsocket_close_and_free_session(struct libwebsocket_context *context,
lwsl_debug("closing http fd %d\n", wsi->u.http.fd);
close(wsi->u.http.fd);
wsi->u.http.fd = 0;
context->protocols[0].callback(context, wsi,
LWS_CALLBACK_CLOSED_HTTP, wsi->user_space, NULL, 0);
}
#ifndef LWS_NO_EXTENSIONS

View file

@ -138,6 +138,7 @@ enum libwebsocket_callback_reasons {
LWS_CALLBACK_CLIENT_FILTER_PRE_ESTABLISH,
LWS_CALLBACK_CLIENT_ESTABLISHED,
LWS_CALLBACK_CLOSED,
LWS_CALLBACK_CLOSED_HTTP,
LWS_CALLBACK_RECEIVE,
LWS_CALLBACK_CLIENT_RECEIVE,
LWS_CALLBACK_CLIENT_RECEIVE_PONG,
@ -419,6 +420,8 @@ struct libwebsocket_extension;
*
* LWS_CALLBACK_CLOSED: when the websocket session ends
*
* LWS_CALLBACK_CLOSED_HTTP: when a HTTP (non-websocket) session ends
*
* LWS_CALLBACK_RECEIVE: data has appeared for this server endpoint from a
* remote client, it can be found at *in and is
* len bytes long