libwebsockets
Lightweight C library for HTML5 websockets
Toggle main menu visibility
class="ui-resizable-handle">
Loading...
Searching...
No Matches
lws-retry.h
Go to the documentation of this file.
1
/*
2
* libwebsockets - small server side websockets and web server implementation
3
*
4
* Copyright (C) 2010 - 2019 Andy Green <andy@warmcat.com>
5
*
6
* Permission is hereby granted, free of charge, to any person obtaining a copy
7
* of this software and associated documentation files (the "Software"), to
8
* deal in the Software without restriction, including without limitation the
9
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10
* sell copies of the Software, and to permit persons to whom the Software is
11
* furnished to do so, subject to the following conditions:
12
*
13
* The above copyright notice and this permission notice shall be included in
14
* all copies or substantial portions of the Software.
15
*
16
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
22
* IN THE SOFTWARE.
23
*/
24
25
typedef
struct
lws_retry_bo
{
26
const
uint32_t
*
retry_ms_table
;
/* base delay in ms */
27
uint16_t
retry_ms_table_count
;
/* entries in table */
28
uint16_t
conceal_count
;
/* max retries to conceal */
29
uint16_t
secs_since_valid_ping
;
/* idle before PING issued */
30
uint16_t
secs_since_valid_hangup
;
/* idle before hangup conn */
31
uint8_t
jitter_percent
;
/* % additional random jitter */
32
}
lws_retry_bo_t
;
33
34
#define LWS_RETRY_CONCEAL_ALWAYS (0xffff)
35
54
55
LWS_VISIBLE
LWS_EXTERN
unsigned
int
56
lws_retry_get_delay_ms
(
struct
lws_context *context,
const
lws_retry_bo_t
*retry,
57
uint16_t
*ctry,
char
*conceal);
58
72
LWS_VISIBLE
LWS_EXTERN
int
73
lws_retry_sul_schedule
(
struct
lws_context *context,
int
tid,
74
lws_sorted_usec_list_t
*sul,
const
lws_retry_bo_t
*retry,
75
sul_cb_t
cb,
uint16_t
*ctry);
76
93
LWS_VISIBLE
LWS_EXTERN
int
94
lws_retry_sul_schedule_retry_wsi
(
struct
lws *wsi,
lws_sorted_usec_list_t
*sul,
95
sul_cb_t
cb,
uint16_t
*ctry);
uint16_t
unsigned short uint16_t
Definition
libwebsockets.h:696
uint32_t
unsigned int uint32_t
Definition
libwebsockets.h:695
LWS_EXTERN
#define LWS_EXTERN
Definition
libwebsockets.h:296
uint8_t
unsigned char uint8_t
Definition
libwebsockets.h:697
LWS_VISIBLE
#define LWS_VISIBLE
Definition
libwebsockets.h:291
lws_retry_bo::retry_ms_table
const uint32_t * retry_ms_table
Definition
lws-retry.h:26
lws_retry_sul_schedule_retry_wsi
LWS_VISIBLE LWS_EXTERN int lws_retry_sul_schedule_retry_wsi(struct lws *wsi, lws_sorted_usec_list_t *sul, sul_cb_t cb, uint16_t *ctry)
lws_retry_bo::conceal_count
uint16_t conceal_count
Definition
lws-retry.h:28
lws_retry_bo::jitter_percent
uint8_t jitter_percent
Definition
lws-retry.h:31
lws_retry_bo::retry_ms_table_count
uint16_t retry_ms_table_count
Definition
lws-retry.h:27
lws_retry_sul_schedule
LWS_VISIBLE LWS_EXTERN int lws_retry_sul_schedule(struct lws_context *context, int tid, lws_sorted_usec_list_t *sul, const lws_retry_bo_t *retry, sul_cb_t cb, uint16_t *ctry)
lws_retry_bo::secs_since_valid_ping
uint16_t secs_since_valid_ping
Definition
lws-retry.h:29
lws_retry_bo::secs_since_valid_hangup
uint16_t secs_since_valid_hangup
Definition
lws-retry.h:30
lws_retry_bo_t
struct lws_retry_bo lws_retry_bo_t
lws_retry_get_delay_ms
LWS_VISIBLE LWS_EXTERN unsigned int lws_retry_get_delay_ms(struct lws_context *context, const lws_retry_bo_t *retry, uint16_t *ctry, char *conceal)
lws_retry_bo
Definition
lws-retry.h:25
sul_cb_t
void(* sul_cb_t)(struct lws_sorted_usec_list *sul)
Definition
lws-timeout-timer.h:160
lws_sorted_usec_list_t
struct lws_sorted_usec_list lws_sorted_usec_list_t
include
libwebsockets
lws-retry.h
Generated on
for libwebsockets by
1.18.0