34 LWS_SYSBLOB_TYPE_AUTH,
35 LWS_SYSBLOB_TYPE_CLIENT_CERT_DER = LWS_SYSBLOB_TYPE_AUTH + 2,
36 LWS_SYSBLOB_TYPE_CLIENT_KEY_DER,
37 LWS_SYSBLOB_TYPE_DEVICE_SERIAL,
38 LWS_SYSBLOB_TYPE_DEVICE_FW_VERSION,
39 LWS_SYSBLOB_TYPE_DEVICE_TYPE,
40 LWS_SYSBLOB_TYPE_NTP_SERVER,
42 LWS_SYSBLOB_TYPE_COUNT
43 } lws_system_blob_item_t;
51 typedef struct lws_system_blob lws_system_blob_t;
53 LWS_EXTERN LWS_VISIBLE
void
54 lws_system_blob_direct_set(lws_system_blob_t *b,
const uint8_t *ptr,
size_t len);
56 LWS_EXTERN LWS_VISIBLE
void
57 lws_system_blob_heap_empty(lws_system_blob_t *b);
59 LWS_EXTERN LWS_VISIBLE
int
60 lws_system_blob_heap_append(lws_system_blob_t *b,
const uint8_t *ptr,
size_t len);
62 LWS_EXTERN LWS_VISIBLE
size_t
63 lws_system_blob_get_size(lws_system_blob_t *b);
66 LWS_EXTERN LWS_VISIBLE
int
67 lws_system_blob_get_single_ptr(lws_system_blob_t *b,
const uint8_t **ptr);
69 LWS_EXTERN LWS_VISIBLE
int
70 lws_system_blob_get(lws_system_blob_t *b, uint8_t *ptr,
size_t *len,
size_t ofs);
72 LWS_EXTERN LWS_VISIBLE
void
73 lws_system_blob_destroy(lws_system_blob_t *b);
80 LWS_EXTERN LWS_VISIBLE lws_system_blob_t *
81 lws_system_get_blob(
struct lws_context *context, lws_system_blob_item_t type,
96 LWS_SYSTATE_CONTEXT_CREATED,
97 LWS_SYSTATE_INITIALIZED,
99 LWS_SYSTATE_IFACE_COLDPLUG,
101 LWS_SYSTATE_CPD_PRE_TIME,
108 LWS_SYSTATE_TIME_VALID,
111 LWS_SYSTATE_CPD_POST_TIME,
119 LWS_SYSTATE_POLICY_VALID,
120 LWS_SYSTATE_REGISTERED,
124 LWS_SYSTATE_OPERATIONAL,
126 LWS_SYSTATE_POLICY_INVALID,
130 } lws_system_states_t;
138 LWS_CPD_CAPTIVE_PORTAL,
143 typedef void (*lws_attach_cb_t)(
struct lws_context *context,
int tsi,
void *opaque);
144 struct lws_attach_item;
148 int (*set_clock)(lws_usec_t us);
149 int (*
attach)(
struct lws_context *context,
int tsi, lws_attach_cb_t cb,
150 lws_system_states_t state,
void *opaque,
151 struct lws_attach_item **get);
178 #if defined(LWS_WITH_SYS_STATE)
188 LWS_EXTERN LWS_VISIBLE lws_state_manager_t *
189 lws_system_get_state_manager(
struct lws_context *context);
195 #define LWSSYSGAUTH_HEX (1 << 0)
206 lws_system_get_ops(
struct lws_context *context);
208 #if defined(LWS_WITH_SYS_STATE)
218 LWS_EXTERN LWS_VISIBLE
struct lws_context *
219 lws_system_context_from_system_mgr(lws_state_manager_t *mgr);
254 LWS_EXTERN LWS_VISIBLE
int
255 __lws_system_attach(
struct lws_context *context,
int tsi, lws_attach_cb_t cb,
256 lws_system_states_t state,
void *opaque,
257 struct lws_attach_item **get);
260 typedef int (*dhcpc_cb_t)(
void *opaque,
int af, uint8_t *ip,
int ip_len);
274 LWS_EXTERN LWS_VISIBLE
int
275 lws_dhcpc_request(
struct lws_context *c,
const char *i,
int af, dhcpc_cb_t cb,
286 LWS_EXTERN LWS_VISIBLE
int
287 lws_dhcpc_remove(
struct lws_context *context,
const char *iface);
298 LWS_EXTERN LWS_VISIBLE
int
299 lws_dhcpc_status(
struct lws_context *context,
lws_sockaddr46 *sa46);
310 LWS_EXTERN LWS_VISIBLE
int
311 lws_system_cpd_start(
struct lws_context *context);
323 LWS_EXTERN LWS_VISIBLE
void
324 lws_system_cpd_set(
struct lws_context *context, lws_cpd_result_t result);
335 LWS_EXTERN LWS_VISIBLE lws_cpd_result_t
336 lws_system_cpd_state_get(
struct lws_context *context);
Definition: lws-system.h:146
int(* attach)(struct lws_context *context, int tsi, lws_attach_cb_t cb, lws_system_states_t state, void *opaque, struct lws_attach_item **get)
Definition: lws-system.h:149
int(* captive_portal_detect_request)(struct lws_context *context)
Definition: lws-system.h:166
uint32_t wake_latency_us
Definition: lws-system.h:173
Definition: lws-network-helper.h:36