25#define LWS_WIFI_MAX_SCAN_TRACK 16
28typedef uint8_t lws_wifi_ch_t;
29typedef int8_t lws_wifi_rssi_t;
53 const char *name,
void *platinfo);
55 lws_netdev_config_t *config);
59 void *buf,
size_t len);
63 const char *passphrase, uint8_t *bssid);
98 const lws_netdev_ops_t *ops;
101 uint8_t mac[LWS_ETH_ALEN];
103} lws_netdev_instance_t;
109 LNDIW_MODE_STA = (1 << 0),
110 LNDIW_MODE_AP = (1 << 1),
113 LNDIW_ACQ_IPv4 = (1 << 0),
114 LNDIW_ACQ_IPv6 = (1 << 1),
122 LWSNDVWIFI_STATE_INITIAL,
127 LWSNDVWIFI_STATE_SCAN,
138 LWSNDVWIFI_STATE_AP_SCAN,
144 LWSNDVWIFI_STATE_STAT_GRP_AP,
152 LWSNDVWIFI_STATE_STAT_GRP_AP_SCAN,
159 LWSNDVWIFI_STATE_STAT,
164 LWSNDVWIFI_STATE_STAT_HAPPY,
165} lws_netdev_wifi_state_t;
174 uint8_t bssid[LWS_ETH_ALEN];
185 lws_netdev_instance_t inst;
186 lws_dll2_owner_t scan;
187 lws_sorted_usec_list_t sul_scan;
189 lws_wifi_creds_t *ap_cred;
194 char current_attempt_ssid[33];
195 uint8_t current_attempt_bssid[LWS_ETH_ALEN];
199} lws_netdev_instance_wifi_t;
211 uint8_t bssid[LWS_ETH_ALEN];
215 lws_wifi_rssi_t rssi[8];
225#define rssi_averaged(_x) (_x->rssi_count ? \
226 ((int)_x->rssi_avg / (int)_x->rssi_count) : \
229LWS_VISIBLE LWS_EXTERN lws_netdevs_t *
230lws_netdevs_from_ctx(
struct lws_context *ctx);
232LWS_VISIBLE LWS_EXTERN
int
233lws_netdev_credentials_settings_set(lws_netdevs_t *nds);
235LWS_VISIBLE LWS_EXTERN
int
236lws_netdev_credentials_settings_get(lws_netdevs_t *nds);
239lws_netdev_wifi_create_plat(
struct lws_context *ctx,
240 const lws_netdev_ops_t *ops,
const char *name,
242LWS_VISIBLE LWS_EXTERN
int
244 lws_netdev_config_t *config);
245LWS_VISIBLE LWS_EXTERN
int
247 void *buf,
size_t len);
248LWS_VISIBLE LWS_EXTERN
int
250LWS_VISIBLE LWS_EXTERN
int
252LWS_VISIBLE LWS_EXTERN
void
254LWS_VISIBLE LWS_EXTERN
void
255lws_netdev_wifi_scan_plat(lws_netdev_instance_t *nd);
257LWS_VISIBLE LWS_EXTERN
int
258lws_netdev_wifi_connect_plat(lws_netdev_instance_t *wnd,
const char *ssid,
259 const char *passphrase, uint8_t *bssid);
261LWS_VISIBLE LWS_EXTERN lws_netdev_instance_t *
262lws_netdev_find(lws_netdevs_t *netdevs,
const char *ifname);
264#define lws_netdev_wifi_plat_ops \
265 .create = lws_netdev_wifi_create_plat, \
266 .configure = lws_netdev_wifi_configure_plat, \
267 .event = lws_netdev_wifi_event_plat, \
268 .up = lws_netdev_wifi_up_plat, \
269 .down = lws_netdev_wifi_down_plat, \
270 .connect = lws_netdev_wifi_connect_plat, \
271 .scan = lws_netdev_wifi_scan_plat, \
272 .destroy = lws_netdev_wifi_destroy_plat
279LWS_VISIBLE LWS_EXTERN
int
280lws_netdev_plat_init(
void);
282LWS_VISIBLE LWS_EXTERN
int
283lws_netdev_plat_wifi_init(
void);
Definition lws-netdev.h:42
Definition lws-netdev.h:184
Definition lws-netdev.h:96
Definition lws-netdev.h:50
int(* event)(struct lws_netdev_instance *nd, lws_usec_t timestamp, void *buf, size_t len)
Definition lws-netdev.h:58
Definition lws-netdev.h:75
lws_dll2_owner_t owner_creds
Definition lws-netdev.h:79
uint8_t refcount_creds
Definition lws-netdev.h:87
struct lwsac * ac_creds
Definition lws-netdev.h:81
lws_dll2_owner_t owner
Definition lws-netdev.h:76
Definition lws-settings.h:41
Definition lws-netdev.h:171
Definition lws-netdev.h:205
Definition lws-adopt.h:86