test server kill skt with minus 1
The client spams the server with mirror protocol content and then closes the connection. However the server wants to send that content back to all the mirror protocol connections, including the one that closed. The result is during the send back phase we usually see an error trying to send to the close client connection. Because we don't return -1, we don't close it on server side and the error repeats a lot before finally closing. This is a side- effect of a recent patch to drain pending input before really closing a dead connection. This patch just changes it to return -1 on the failed send attempt assertively closing the connection. Signed-off-by: Andy Green <andy.green@linaro.org>
This commit is contained in:
parent
c9ac31ee1c
commit
51b20ee92a
1 changed files with 4 additions and 4 deletions
|
@ -385,8 +385,8 @@ callback_dumb_increment(struct libwebsocket_context *context,
|
|||
n = sprintf((char *)p, "%d", pss->number++);
|
||||
n = libwebsocket_write(wsi, p, n, LWS_WRITE_TEXT);
|
||||
if (n < 0) {
|
||||
lwsl_err("ERROR %d writing to socket\n", n);
|
||||
return 1;
|
||||
lwsl_err("ERROR %d writing to di socket\n", n);
|
||||
return -1;
|
||||
}
|
||||
if (close_testing && pss->number == 50) {
|
||||
lwsl_info("close tesing limit, closing\n");
|
||||
|
@ -476,8 +476,8 @@ callback_lws_mirror(struct libwebsocket_context *context,
|
|||
ringbuffer[pss->ringbuffer_tail].len,
|
||||
LWS_WRITE_TEXT);
|
||||
if (n < 0) {
|
||||
lwsl_err("ERROR %d writing to socket\n", n);
|
||||
return 1;
|
||||
lwsl_err("ERROR %d writing to mirror socket\n", n);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (pss->ringbuffer_tail == (MAX_MESSAGE_QUEUE - 1))
|
||||
|
|
Loading…
Add table
Reference in a new issue