Handle pending SSL reads which would otherwise not trigger a POLLIN.
This commit is contained in:
parent
ad2248a207
commit
622d9f2ff3
1 changed files with 4 additions and 0 deletions
|
@ -497,6 +497,9 @@ libwebsocket_service_fd(struct libwebsocket_context *context,
|
||||||
n = lws_server_socket_service(context, wsi, pollfd);
|
n = lws_server_socket_service(context, wsi, pollfd);
|
||||||
if (n < 0)
|
if (n < 0)
|
||||||
goto close_and_handled;
|
goto close_and_handled;
|
||||||
|
pending = lws_ssl_pending(wsi);
|
||||||
|
if (pending)
|
||||||
|
goto handle_pending;
|
||||||
goto handled;
|
goto handled;
|
||||||
|
|
||||||
case LWS_CONNMODE_WS_SERVING:
|
case LWS_CONNMODE_WS_SERVING:
|
||||||
|
@ -596,6 +599,7 @@ drain:
|
||||||
|
|
||||||
pending = lws_ssl_pending(wsi);
|
pending = lws_ssl_pending(wsi);
|
||||||
if (pending) {
|
if (pending) {
|
||||||
|
handle_pending:
|
||||||
pending = pending > sizeof(context->service_buffer)?
|
pending = pending > sizeof(context->service_buffer)?
|
||||||
sizeof(context->service_buffer):pending;
|
sizeof(context->service_buffer):pending;
|
||||||
goto read;
|
goto read;
|
||||||
|
|
Loading…
Add table
Reference in a new issue