51 typedef unsigned char * lwsac_cached_file_t;
54 #define lws_list_ptr_container(P,T,M) ((T *)((char *)(P) - offsetof(T, M)))
68 typedef void * lws_list_ptr;
74 typedef int (*lws_list_ptr_sort_func_t)(lws_list_ptr a, lws_list_ptr b);
76 #define lws_list_ptr_advance(_lp) _lp = *((void **)_lp)
79 LWS_VISIBLE LWS_EXTERN
void
80 lws_list_ptr_insert(lws_list_ptr *phead, lws_list_ptr *add,
81 lws_list_ptr_sort_func_t sort);
103 LWS_VISIBLE LWS_EXTERN
void *
104 lwsac_use(
struct lwsac **head,
size_t ensure,
size_t chunk_size);
125 LWS_VISIBLE LWS_EXTERN
void *
143 LWS_VISIBLE LWS_EXTERN
void *
146 #define lwsac_use_zeroed lwsac_use_zero
156 LWS_VISIBLE LWS_EXTERN
void
177 LWS_VISIBLE LWS_EXTERN
void
187 LWS_VISIBLE LWS_EXTERN
void
198 LWS_VISIBLE LWS_EXTERN
void
231 LWS_VISIBLE LWS_EXTERN
int
236 LWS_VISIBLE LWS_EXTERN
void
237 lwsac_use_cached_file_start(lwsac_cached_file_t cache);
239 LWS_VISIBLE LWS_EXTERN
void
240 lwsac_use_cached_file_end(lwsac_cached_file_t *cache);
242 LWS_VISIBLE LWS_EXTERN
void
243 lwsac_use_cached_file_detach(lwsac_cached_file_t *cache);
245 LWS_VISIBLE LWS_EXTERN
int
246 lwsac_cached_file(
const char *filepath, lwsac_cached_file_t *cache,
252 LWS_VISIBLE LWS_EXTERN
size_t
253 lwsac_sizeof(
int first);
255 LWS_VISIBLE LWS_EXTERN
size_t
256 lwsac_get_tail_pos(
struct lwsac *lac);
258 LWS_VISIBLE LWS_EXTERN
struct lwsac *
259 lwsac_get_next(
struct lwsac *lac);
261 LWS_VISIBLE LWS_EXTERN
size_t
262 lwsac_align(
size_t length);
264 LWS_VISIBLE LWS_EXTERN
void
265 lwsac_info(
struct lwsac *head);
267 LWS_VISIBLE LWS_EXTERN uint64_t
268 lwsac_total_alloc(
struct lwsac *head);
270 LWS_VISIBLE LWS_EXTERN uint64_t
271 lwsac_total_overhead(
struct lwsac *head);
287 LWS_VISIBLE LWS_EXTERN uint8_t *
LWS_VISIBLE LWS_EXTERN void * lwsac_use_backfill(struct lwsac **head, size_t ensure, size_t chunk_size)
LWS_VISIBLE LWS_EXTERN void * lwsac_use_zero(struct lwsac **head, size_t ensure, size_t chunk_size)
LWS_VISIBLE LWS_EXTERN void lwsac_free(struct lwsac **head)
LWS_VISIBLE LWS_EXTERN void lwsac_reference(struct lwsac *head)
LWS_VISIBLE LWS_EXTERN void * lwsac_use(struct lwsac **head, size_t ensure, size_t chunk_size)
LWS_VISIBLE LWS_EXTERN uint8_t * lwsac_scan_extant(struct lwsac *head, uint8_t *find, size_t len, int nul)
LWS_VISIBLE LWS_EXTERN void lwsac_unreference(struct lwsac **head)
LWS_VISIBLE LWS_EXTERN int lwsac_extend(struct lwsac *head, size_t amount)
LWS_VISIBLE LWS_EXTERN void lwsac_detach(struct lwsac **head)