18#ifndef _MEGAWIFI_ASYNC_H_
19#define _MEGAWIFI_ASYNC_H_
21#if (MODULE_MEGAWIFI == 1 && MODULE_MEGAWIFI_ASYNC == 1)
22#define MW_PROCESS_OVERRIDE
25typedef void (*mw_async_cb)(
enum mw_err err);
27typedef void (*mw_detect_async_cb)(
enum mw_err err, uint8_t *major, uint8_t *minor,
29typedef void (*mw_ip_cfg_get_async_cb)(
enum mw_err err,
31typedef void (*mw_ip_current_async_cb)(
enum mw_err err,
33typedef void (*mw_sys_stat_get_async_cb)(
enum mw_err err,
35typedef void (*mw_bssid_get_async_cb)(
enum mw_err err, uint8_t *bssid);
36typedef void (*mw_flash_read_async_cb)(
enum mw_err err, uint8_t *data);
37typedef void (*mw_hrng_get_async_cb)(
enum mw_err err, uint8_t *data);
38typedef void (*mw_gamertag_get_async_cb)(
enum mw_err err,
40typedef void (*mw_def_server_get_async_cb)(
enum mw_err err,
char *server_url);
41typedef void (*mw_wifi_adv_cfg_get_async_cb)(
enum mw_err err,
43typedef void (*mw_ap_cfg_get_async_cb)(
enum mw_err err,
45typedef void (*mw_sntp_cfg_get_async_cb)(
enum mw_err err,
47typedef void (*mw_date_time_get_async_cb)(
enum mw_err err,
49typedef void (*mw_flash_id_get_async_cb)(
enum mw_err err,
51typedef void (*mw_ap_scan_async_cb)(
enum mw_err err, uint8_t *ap_data,
53typedef void (*mw_ping_async_cb)(
enum mw_err err,
55typedef void (*mw_fw_list_upgrades_async_cb)(
enum mw_err err,
57typedef void (*mw_http_finish_async_cb)(
enum mw_err err, uint8_t *data);
58typedef void (*mw_ga_request_async_cb)(
enum mw_err err, uint8_t *data);
59typedef void (*mw_def_ap_cfg_get_async_cb)(
enum mw_err err,
u8 slot);
60typedef void (*mw_sock_stat_get_async_cb)(
enum mw_err err,
u8 sock);
61typedef void (*mw_http_cert_query_async_cb)(
enum mw_err err, int32_t certSize);
75enum mw_err mw_detect_async(mw_detect_async_cb callback);
76enum mw_err mw_default_cfg_set_async(mw_async_cb callback);
77enum mw_err mw_ap_cfg_set_async(uint8_t slot,
const char *ssid,
78 const char *pass,
enum mw_phy_type phy_type, mw_async_cb callback);
79enum mw_err mw_ip_cfg_set_async(uint8_t slot,
const struct mw_ip_cfg *ip,
80 mw_async_cb callback);
81enum mw_err mw_ap_assoc_async(uint8_t slot, mw_async_cb callback);
82enum mw_err mw_ap_disassoc_async(mw_async_cb callback);
83enum mw_err mw_def_ap_cfg_async(uint8_t slot, mw_async_cb callback);
84enum mw_err mw_sntp_cfg_set_async(
const char *tz_str,
85 const char *server[3], mw_async_cb callback);
86enum mw_err mw_flash_sector_erase_async(uint16_t sect, mw_async_cb callback);
87enum mw_err mw_flash_write_async(uint32_t addr, uint8_t *data,
88 uint16_t data_len, mw_async_cb callback);
89enum mw_err mw_gamertag_set_async(uint8_t slot,
90 const struct mw_gamertag *gamertag, mw_async_cb callback);
92enum mw_err mw_http_url_set_async(
const char *url, mw_async_cb callback);
94 mw_async_cb callback);
95enum mw_err mw_http_header_add_async(
const char *key,
const char *value,
96 mw_async_cb callback);
97enum mw_err mw_http_header_del_async(
const char *key, mw_async_cb callback);
98enum mw_err mw_def_server_set_async(
const char *server_url,
99 mw_async_cb callback);
100enum mw_err mw_log_async(
const char *msg, mw_async_cb callback);
101enum mw_err mw_factory_settings_async(mw_async_cb callback);
102enum mw_err mw_cfg_save_async(mw_async_cb callback);
104 mw_async_cb callback);
105enum mw_err mw_ga_endpoint_set_async(
const char *endpoint,
106 const char *priv_key, mw_async_cb callback);
107enum mw_err mw_ga_key_value_add_async(
const char **key,
const char **value,
108 uint16_t num_pairs, mw_async_cb callback);
109enum mw_err mw_fw_upgrade_async(
const char *name, mw_async_cb callback);
110enum mw_err mw_tcp_connect_async(uint8_t ch,
const char *dst_addr,
111 const char *dst_port,
const char *src_port, mw_async_cb callback);
112enum mw_err mw_close_async(uint8_t ch, mw_async_cb callback);
113enum mw_err mw_tcp_bind_async(uint8_t ch, uint16_t port,
114 mw_async_cb callback);
115enum mw_err mw_udp_set_async(uint8_t ch,
const char *dst_addr,
116 const char *dst_port,
const char *src_port, mw_async_cb callback);
117enum mw_err mw_http_open_async(uint32_t content_len, mw_async_cb callback);
118enum mw_err mw_ip_cfg_get_async(uint8_t slot, mw_ip_cfg_get_async_cb callback);
119enum mw_err mw_ip_current_async(mw_ip_current_async_cb callback);
120enum mw_err mw_sys_stat_get_async(mw_sys_stat_get_async_cb callback);
122 mw_bssid_get_async_cb callback);
123enum mw_err mw_flash_read_async(uint32_t addr, uint16_t data_len,
124 mw_flash_read_async_cb callback);
125enum mw_err mw_hrng_get_async(uint16_t rnd_len, mw_hrng_get_async_cb callback);
126enum mw_err mw_gamertag_get_async(uint8_t slot, mw_gamertag_get_async_cb callback);
127enum mw_err mw_def_server_get_async(mw_def_server_get_async_cb callback);
128enum mw_err mw_wifi_adv_cfg_get_async(mw_wifi_adv_cfg_get_async_cb callback);
129enum mw_err mw_ap_cfg_get_async(uint8_t slot, mw_ap_cfg_get_async_cb callback);
130enum mw_err mw_sntp_cfg_get_async(mw_sntp_cfg_get_async_cb callback);
131enum mw_err mw_date_time_get_async(mw_date_time_get_async_cb callback);
132enum mw_err mw_flash_id_get_async(mw_flash_id_get_async_cb callback);
134 mw_ap_scan_async_cb callback);
135enum mw_err mw_def_ap_cfg_get_async(mw_def_ap_cfg_get_async_cb callback);
136enum mw_err mw_sock_stat_get_async(uint8_t ch, mw_sock_stat_get_async_cb callback);
137enum mw_err mw_http_cert_query_async(mw_http_cert_query_async_cb callback);
138enum mw_err mw_ping_async(
const char *domain,
u8 retries,
139 mw_ping_async_cb callback);
140enum mw_err mw_fw_list_upgrades_async(uint8_t page, uint8_t size,
141 uint8_t offset, mw_fw_list_upgrades_async_cb callback);
142enum mw_err mw_http_finish_async(mw_http_finish_async_cb callback);
144 const char **path, uint8_t num_paths,
const char **key,
145 const char **value, uint8_t num_kv_pairs, mw_ga_request_async_cb callback);
146enum mw_err mw_http_cleanup_async(mw_async_cb callback);
147enum mw_err mw_http_cert_set_async(uint32_t cert_hash,
const char *cert,
148 uint16_t cert_len, mw_async_cb callback);
150void mw_process_async(
void);
152#define mw_process mw_process_async
Basic SGDK library configuration file.
mw_err
Error codes for MegaWiFi API functions.
Definition megawifi.h:71
mw_if_type
Interface type for the mw_bssid_get() function.
Definition megawifi.h:136
mw_http_method
Supported HTTP methods.
Definition megawifi.h:82
enum PACKED mw_phy_type
WiFi PHY configuration for the connection to the AP.
Definition mw-msg.h:138
MegaWiFi API implementation.
Flash chip identifiers.
Definition mw-msg.h:309
Gamertag data.
Definition mw-msg.h:241
IP configuration parameters.
Definition mw-msg.h:160
AP configuration message.
Definition mw-msg.h:172
Date and time message.
Definition mw-msg.h:197
SNTP and timezone configuration.
Definition mw-msg.h:187
Advanced WiFi configuration.
Definition mw-msg.h:224
unsigned char u8
Definition types.h:95
System status.
Definition mw-msg.h:285