mirror of
https://github.com/warmcat/libwebsockets.git
synced 2025-03-09 00:00:04 +01:00
ss: http: defend against CONNECTED-CONNECTED
This commit is contained in:
parent
a0e60304a4
commit
1e56dc9642
1 changed files with 15 additions and 9 deletions
|
@ -650,9 +650,11 @@ secstream_h1(struct lws *wsi, enum lws_callback_reasons reason, void *user,
|
|||
|
||||
if (h->prev_ss_state != LWSSSCS_CONNECTED) {
|
||||
wsi->client_suppress_CONNECTION_ERROR = 1;
|
||||
r = lws_ss_event_helper(h, LWSSSCS_CONNECTED);
|
||||
if (r != LWSSSSRET_OK)
|
||||
return _lws_ss_handle_state_ret_CAN_DESTROY_HANDLE(r, wsi, &h);
|
||||
if (h->prev_ss_state != LWSSSCS_CONNECTED) {
|
||||
r = lws_ss_event_helper(h, LWSSSCS_CONNECTED);
|
||||
if (r != LWSSSSRET_OK)
|
||||
return _lws_ss_handle_state_ret_CAN_DESTROY_HANDLE(r, wsi, &h);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -829,9 +831,11 @@ malformed:
|
|||
!strcmp(h->policy->u.http.method, "POST"))) {
|
||||
|
||||
wsi->client_suppress_CONNECTION_ERROR = 1;
|
||||
r = lws_ss_event_helper(h, LWSSSCS_CONNECTED);
|
||||
if (r)
|
||||
return _lws_ss_handle_state_ret_CAN_DESTROY_HANDLE(r, wsi, &h);
|
||||
if (h->prev_ss_state != LWSSSCS_CONNECTED) {
|
||||
r = lws_ss_event_helper(h, LWSSSCS_CONNECTED);
|
||||
if (r)
|
||||
return _lws_ss_handle_state_ret_CAN_DESTROY_HANDLE(r, wsi, &h);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
@ -1100,9 +1104,11 @@ malformed:
|
|||
lws_metrics_caliper_report_hist(h->cal_txn, (struct lws *)NULL);
|
||||
#endif
|
||||
wsi->client_suppress_CONNECTION_ERROR = 1;
|
||||
r = lws_ss_event_helper(h, LWSSSCS_CONNECTED);
|
||||
if (r)
|
||||
return _lws_ss_handle_state_ret_CAN_DESTROY_HANDLE(r, wsi, &h);
|
||||
if (h->prev_ss_state != LWSSSCS_CONNECTED) {
|
||||
r = lws_ss_event_helper(h, LWSSSCS_CONNECTED);
|
||||
if (r)
|
||||
return _lws_ss_handle_state_ret_CAN_DESTROY_HANDLE(r, wsi, &h);
|
||||
}
|
||||
}
|
||||
|
||||
r = lws_ss_event_helper(h, LWSSSCS_SERVER_TXN);
|
||||
|
|
Loading…
Add table
Reference in a new issue