mirror of
https://github.com/cesanta/mongoose.git
synced 2026-11-09 16:21:45 +00:00
rename ifp state change event
This commit is contained in:
1 parent
0ecbb62630
commit
c62f8b4e93
17 files changed
+73
-75
No files matched your search
+8
-8
@@ -6974,11 +6974,11 @@ bool mg_l2_poll(struct mg_tcpip_if *ifp, bool expired_1000ms);
|
|||||||
|
|
||||||
static void mg_tcpip_call(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void mg_tcpip_call(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
#if 0 && MG_ENABLE_PROFILE
|
#if 0 && MG_ENABLE_PROFILE
|
||||||
const char *names[] = {"TCPIP_EV_ST_CHG", "TCPIP_EV_DHCP_DNS",
|
const char *names[] = {"TCPIP_EV_STATE_CHANGE", "TCPIP_EV_DHCP_DNS",
|
||||||
"TCPIP_EV_DHCP_SNTP", "TCPIP_EV_ARP",
|
"TCPIP_EV_DHCP_SNTP", "TCPIP_EV_ARP",
|
||||||
"TCPIP_EV_TIMER_1S", "TCPIP_EV_WIFI_SCAN_RESULT",
|
"TCPIP_EV_TIMER_1S", "TCPIP_EV_WIFI_SCAN_RESULT",
|
||||||
"TCPIP_EV_WIFI_SCAN_END", "TCPIP_EV_WIFI_CONNECT_ERR",
|
"TCPIP_EV_WIFI_SCAN_END", "TCPIP_EV_WIFI_CONNECT_ERR",
|
||||||
"TCPIP_EV_DRIVER", "MG_TCPIP_EV_ST6_CHG",
|
"TCPIP_EV_DRIVER", "TCPIP_EV_STATE6_CHANGE",
|
||||||
"TCPIP_EV_USER"};
|
"TCPIP_EV_USER"};
|
||||||
if (ev != MG_TCPIP_EV_TIMER_1S && ev < (int) (sizeof(names) / sizeof(names[0]))) {
|
if (ev != MG_TCPIP_EV_TIMER_1S && ev < (int) (sizeof(names) / sizeof(names[0]))) {
|
||||||
MG_PROF_ADD(ifp, names[ev]); // TODO(): call MG_PROF_DUMP() MG_PROF_FREE()
|
MG_PROF_ADD(ifp, names[ev]); // TODO(): call MG_PROF_DUMP() MG_PROF_FREE()
|
||||||
@@ -7163,7 +7163,7 @@ static void onstatechange(struct mg_tcpip_if *ifp) {
|
|||||||
} else if (ifp->state == MG_TCPIP_STATE_DOWN) {
|
} else if (ifp->state == MG_TCPIP_STATE_DOWN) {
|
||||||
MG_ERROR(("Link down"));
|
MG_ERROR(("Link down"));
|
||||||
}
|
}
|
||||||
mg_tcpip_call(ifp, MG_TCPIP_EV_ST_CHG, &ifp->state);
|
mg_tcpip_call(ifp, MG_TCPIP_EV_STATE_CHANGE, &ifp->state);
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct ip *tx_ip(struct mg_tcpip_if *ifp, uint8_t *l2_dst, uint8_t proto,
|
static struct ip *tx_ip(struct mg_tcpip_if *ifp, uint8_t *l2_dst, uint8_t proto,
|
||||||
@@ -7845,7 +7845,7 @@ static void onstate6change(struct mg_tcpip_if *ifp) {
|
|||||||
MG_INFO(("IP: %M", mg_print_ip6, &ifp->ip6ll));
|
MG_INFO(("IP: %M", mg_print_ip6, &ifp->ip6ll));
|
||||||
}
|
}
|
||||||
if (ifp->state6 > MG_TCPIP_STATE_UP)
|
if (ifp->state6 > MG_TCPIP_STATE_UP)
|
||||||
mg_tcpip_call(ifp, MG_TCPIP_EV_ST6_CHG, &ifp->state6);
|
mg_tcpip_call(ifp, MG_TCPIP_EV_STATE6_CHANGE, &ifp->state6);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -24929,7 +24929,7 @@ static bool s_link, s_auth, s_join;
|
|||||||
|
|
||||||
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
||||||
if (wifi->apmode && ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
if (wifi->apmode && ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
||||||
MG_DEBUG(("Access Point started"));
|
MG_DEBUG(("Access Point started"));
|
||||||
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
||||||
s_mask = ifp->mask, ifp->mask = wifi->apmask;
|
s_mask = ifp->mask, ifp->mask = wifi->apmask;
|
||||||
@@ -26590,7 +26590,7 @@ static uint32_t s_ip, s_mask;
|
|||||||
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_nxp_wifi_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_nxp_wifi_data *) ifp->driver_data)->wifi;
|
||||||
if (wifi->apmode && ev == MG_TCPIP_EV_ST_CHG &&
|
if (wifi->apmode && ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
||||||
MG_DEBUG(("Access Point started"));
|
MG_DEBUG(("Access Point started"));
|
||||||
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
||||||
@@ -26843,7 +26843,7 @@ static bool s_stalink = false, s_connecting = false;
|
|||||||
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_pico_w_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_pico_w_data *) ifp->driver_data)->wifi;
|
||||||
if (wifi->apmode && ev == MG_TCPIP_EV_ST_CHG &&
|
if (wifi->apmode && ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
||||||
MG_DEBUG(("Access Point started"));
|
MG_DEBUG(("Access Point started"));
|
||||||
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
||||||
@@ -27926,7 +27926,7 @@ static bool s_link = false, s_connecting = false;
|
|||||||
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_st67w6_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_st67w6_data *) ifp->driver_data)->wifi;
|
||||||
if (wifi->apmode && ev == MG_TCPIP_EV_ST_CHG &&
|
if (wifi->apmode && ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
||||||
MG_DEBUG(("Access Point started"));
|
MG_DEBUG(("Access Point started"));
|
||||||
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
||||||
|
|||||||
+13
-14
@@ -3441,22 +3441,21 @@ struct mg_tcpip_driver {
|
|||||||
typedef void (*mg_tcpip_event_handler_t)(struct mg_tcpip_if *ifp, int ev,
|
typedef void (*mg_tcpip_event_handler_t)(struct mg_tcpip_if *ifp, int ev,
|
||||||
void *ev_data);
|
void *ev_data);
|
||||||
|
|
||||||
|
//clang-format off
|
||||||
enum {
|
enum {
|
||||||
MG_TCPIP_EV_ST_CHG, // state change uint8_t * (&ifp->state)
|
MG_TCPIP_EV_STATE_CHANGE, // state change uint8_t *(&ifp->state)
|
||||||
MG_TCPIP_EV_DHCP_DNS, // DHCP DNS assignment uint32_t *ipaddr
|
MG_TCPIP_EV_DHCP_DNS, // DHCP DNS assignment uint32_t *ipaddr
|
||||||
MG_TCPIP_EV_DHCP_SNTP, // DHCP SNTP assignment uint32_t *ipaddr
|
MG_TCPIP_EV_DHCP_SNTP, // DHCP SNTP assignment uint32_t *ipaddr
|
||||||
MG_TCPIP_EV_ARP, // Got ARP packet struct mg_str *
|
MG_TCPIP_EV_ARP, // Got ARP packet struct mg_str *
|
||||||
MG_TCPIP_EV_TIMER_1S, // 1 second timer NULL
|
MG_TCPIP_EV_TIMER_1S, // 1 second timer NULL
|
||||||
MG_TCPIP_EV_WIFI_SCAN_RESULT, // Wi-Fi scan results struct
|
MG_TCPIP_EV_WIFI_SCAN_RESULT, // Wi-Fi scan results struct mg_wifi_scan_bss_data *
|
||||||
// mg_wifi_scan_bss_data *
|
MG_TCPIP_EV_WIFI_SCAN_END, // Wi-Fi scan has finished NULL
|
||||||
MG_TCPIP_EV_WIFI_SCAN_END, // Wi-Fi scan has finished NULL
|
MG_TCPIP_EV_WIFI_CONNECT_ERR, // Wi-Fi connect has failed driver and chip specific
|
||||||
MG_TCPIP_EV_WIFI_CONNECT_ERR, // Wi-Fi connect has failed driver and
|
MG_TCPIP_EV_DRIVER, // Driver event driver specific
|
||||||
// chip specific
|
MG_TCPIP_EV_STATE6_CHANGE, // state6 change uint8_t *(&ifp->state6)
|
||||||
MG_TCPIP_EV_DRIVER, // Driver event driver specific
|
MG_TCPIP_EV_USER // Starting ID for user events
|
||||||
MG_TCPIP_EV_ST6_CHG, // state6 change uint8_t *
|
|
||||||
// (&ifp->state6)
|
|
||||||
MG_TCPIP_EV_USER // Starting ID for user events
|
|
||||||
};
|
};
|
||||||
|
//clang-format on
|
||||||
|
|
||||||
// Network interface
|
// Network interface
|
||||||
struct mg_tcpip_if {
|
struct mg_tcpip_if {
|
||||||
|
|||||||
+1
-1
@@ -18,7 +18,7 @@ static bool s_link, s_auth, s_join;
|
|||||||
|
|
||||||
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
||||||
if (wifi->apmode && ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
if (wifi->apmode && ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
||||||
MG_DEBUG(("Access Point started"));
|
MG_DEBUG(("Access Point started"));
|
||||||
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
||||||
s_mask = ifp->mask, ifp->mask = wifi->apmask;
|
s_mask = ifp->mask, ifp->mask = wifi->apmask;
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ static uint32_t s_ip, s_mask;
|
|||||||
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_nxp_wifi_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_nxp_wifi_data *) ifp->driver_data)->wifi;
|
||||||
if (wifi->apmode && ev == MG_TCPIP_EV_ST_CHG &&
|
if (wifi->apmode && ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
||||||
MG_DEBUG(("Access Point started"));
|
MG_DEBUG(("Access Point started"));
|
||||||
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ static bool s_stalink = false, s_connecting = false;
|
|||||||
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_pico_w_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_pico_w_data *) ifp->driver_data)->wifi;
|
||||||
if (wifi->apmode && ev == MG_TCPIP_EV_ST_CHG &&
|
if (wifi->apmode && ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
||||||
MG_DEBUG(("Access Point started"));
|
MG_DEBUG(("Access Point started"));
|
||||||
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ static bool s_link = false, s_connecting = false;
|
|||||||
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void wifi_cb(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_st67w6_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_st67w6_data *) ifp->driver_data)->wifi;
|
||||||
if (wifi->apmode && ev == MG_TCPIP_EV_ST_CHG &&
|
if (wifi->apmode && ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_UP) {
|
||||||
MG_DEBUG(("Access Point started"));
|
MG_DEBUG(("Access Point started"));
|
||||||
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
s_ip = ifp->ip, ifp->ip = wifi->apip;
|
||||||
|
|||||||
+4
-4
@@ -210,11 +210,11 @@ bool mg_l2_poll(struct mg_tcpip_if *ifp, bool expired_1000ms);
|
|||||||
|
|
||||||
static void mg_tcpip_call(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void mg_tcpip_call(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
#if 0 && MG_ENABLE_PROFILE
|
#if 0 && MG_ENABLE_PROFILE
|
||||||
const char *names[] = {"TCPIP_EV_ST_CHG", "TCPIP_EV_DHCP_DNS",
|
const char *names[] = {"TCPIP_EV_STATE_CHANGE", "TCPIP_EV_DHCP_DNS",
|
||||||
"TCPIP_EV_DHCP_SNTP", "TCPIP_EV_ARP",
|
"TCPIP_EV_DHCP_SNTP", "TCPIP_EV_ARP",
|
||||||
"TCPIP_EV_TIMER_1S", "TCPIP_EV_WIFI_SCAN_RESULT",
|
"TCPIP_EV_TIMER_1S", "TCPIP_EV_WIFI_SCAN_RESULT",
|
||||||
"TCPIP_EV_WIFI_SCAN_END", "TCPIP_EV_WIFI_CONNECT_ERR",
|
"TCPIP_EV_WIFI_SCAN_END", "TCPIP_EV_WIFI_CONNECT_ERR",
|
||||||
"TCPIP_EV_DRIVER", "MG_TCPIP_EV_ST6_CHG",
|
"TCPIP_EV_DRIVER", "TCPIP_EV_STATE6_CHANGE",
|
||||||
"TCPIP_EV_USER"};
|
"TCPIP_EV_USER"};
|
||||||
if (ev != MG_TCPIP_EV_TIMER_1S && ev < (int) (sizeof(names) / sizeof(names[0]))) {
|
if (ev != MG_TCPIP_EV_TIMER_1S && ev < (int) (sizeof(names) / sizeof(names[0]))) {
|
||||||
MG_PROF_ADD(ifp, names[ev]); // TODO(): call MG_PROF_DUMP() MG_PROF_FREE()
|
MG_PROF_ADD(ifp, names[ev]); // TODO(): call MG_PROF_DUMP() MG_PROF_FREE()
|
||||||
@@ -399,7 +399,7 @@ static void onstatechange(struct mg_tcpip_if *ifp) {
|
|||||||
} else if (ifp->state == MG_TCPIP_STATE_DOWN) {
|
} else if (ifp->state == MG_TCPIP_STATE_DOWN) {
|
||||||
MG_ERROR(("Link down"));
|
MG_ERROR(("Link down"));
|
||||||
}
|
}
|
||||||
mg_tcpip_call(ifp, MG_TCPIP_EV_ST_CHG, &ifp->state);
|
mg_tcpip_call(ifp, MG_TCPIP_EV_STATE_CHANGE, &ifp->state);
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct ip *tx_ip(struct mg_tcpip_if *ifp, uint8_t *l2_dst, uint8_t proto,
|
static struct ip *tx_ip(struct mg_tcpip_if *ifp, uint8_t *l2_dst, uint8_t proto,
|
||||||
@@ -1081,7 +1081,7 @@ static void onstate6change(struct mg_tcpip_if *ifp) {
|
|||||||
MG_INFO(("IP: %M", mg_print_ip6, &ifp->ip6ll));
|
MG_INFO(("IP: %M", mg_print_ip6, &ifp->ip6ll));
|
||||||
}
|
}
|
||||||
if (ifp->state6 > MG_TCPIP_STATE_UP)
|
if (ifp->state6 > MG_TCPIP_STATE_UP)
|
||||||
mg_tcpip_call(ifp, MG_TCPIP_EV_ST6_CHG, &ifp->state6);
|
mg_tcpip_call(ifp, MG_TCPIP_EV_STATE6_CHANGE, &ifp->state6);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|||||||
+13
-14
@@ -20,22 +20,21 @@ struct mg_tcpip_driver {
|
|||||||
typedef void (*mg_tcpip_event_handler_t)(struct mg_tcpip_if *ifp, int ev,
|
typedef void (*mg_tcpip_event_handler_t)(struct mg_tcpip_if *ifp, int ev,
|
||||||
void *ev_data);
|
void *ev_data);
|
||||||
|
|
||||||
|
//clang-format off
|
||||||
enum {
|
enum {
|
||||||
MG_TCPIP_EV_ST_CHG, // state change uint8_t * (&ifp->state)
|
MG_TCPIP_EV_STATE_CHANGE, // state change uint8_t *(&ifp->state)
|
||||||
MG_TCPIP_EV_DHCP_DNS, // DHCP DNS assignment uint32_t *ipaddr
|
MG_TCPIP_EV_DHCP_DNS, // DHCP DNS assignment uint32_t *ipaddr
|
||||||
MG_TCPIP_EV_DHCP_SNTP, // DHCP SNTP assignment uint32_t *ipaddr
|
MG_TCPIP_EV_DHCP_SNTP, // DHCP SNTP assignment uint32_t *ipaddr
|
||||||
MG_TCPIP_EV_ARP, // Got ARP packet struct mg_str *
|
MG_TCPIP_EV_ARP, // Got ARP packet struct mg_str *
|
||||||
MG_TCPIP_EV_TIMER_1S, // 1 second timer NULL
|
MG_TCPIP_EV_TIMER_1S, // 1 second timer NULL
|
||||||
MG_TCPIP_EV_WIFI_SCAN_RESULT, // Wi-Fi scan results struct
|
MG_TCPIP_EV_WIFI_SCAN_RESULT, // Wi-Fi scan results struct mg_wifi_scan_bss_data *
|
||||||
// mg_wifi_scan_bss_data *
|
MG_TCPIP_EV_WIFI_SCAN_END, // Wi-Fi scan has finished NULL
|
||||||
MG_TCPIP_EV_WIFI_SCAN_END, // Wi-Fi scan has finished NULL
|
MG_TCPIP_EV_WIFI_CONNECT_ERR, // Wi-Fi connect has failed driver and chip specific
|
||||||
MG_TCPIP_EV_WIFI_CONNECT_ERR, // Wi-Fi connect has failed driver and
|
MG_TCPIP_EV_DRIVER, // Driver event driver specific
|
||||||
// chip specific
|
MG_TCPIP_EV_STATE6_CHANGE, // state6 change uint8_t *(&ifp->state6)
|
||||||
MG_TCPIP_EV_DRIVER, // Driver event driver specific
|
MG_TCPIP_EV_USER // Starting ID for user events
|
||||||
MG_TCPIP_EV_ST6_CHG, // state6 change uint8_t *
|
|
||||||
// (&ifp->state6)
|
|
||||||
MG_TCPIP_EV_USER // Starting ID for user events
|
|
||||||
};
|
};
|
||||||
|
//clang-format on
|
||||||
|
|
||||||
// Network interface
|
// Network interface
|
||||||
struct mg_tcpip_if {
|
struct mg_tcpip_if {
|
||||||
|
|||||||
+2
-2
@@ -61,7 +61,7 @@ static void test_csum(void) {
|
|||||||
static bool executed = false;
|
static bool executed = false;
|
||||||
|
|
||||||
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE) {
|
||||||
ASSERT(*(uint8_t *) ev_data == MG_TCPIP_STATE_UP);
|
ASSERT(*(uint8_t *) ev_data == MG_TCPIP_STATE_UP);
|
||||||
executed = true;
|
executed = true;
|
||||||
}
|
}
|
||||||
@@ -81,7 +81,7 @@ static void test_statechange(void) {
|
|||||||
}
|
}
|
||||||
#if MG_ENABLE_IPV6
|
#if MG_ENABLE_IPV6
|
||||||
static void mif6_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void mif6_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
if (ev == MG_TCPIP_EV_ST6_CHG) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE) {
|
||||||
ASSERT(*(uint8_t *) ev_data == MG_TCPIP_STATE_REQ);
|
ASSERT(*(uint8_t *) ev_data == MG_TCPIP_STATE_REQ);
|
||||||
executed = true;
|
executed = true;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4294,7 +4294,7 @@ static void onstatechange(struct mg_tcpip_if *ifp) {
|
|||||||
} else if (ifp->state == MG_TCPIP_STATE_DOWN) {
|
} else if (ifp->state == MG_TCPIP_STATE_DOWN) {
|
||||||
MG_ERROR(("Link down"));
|
MG_ERROR(("Link down"));
|
||||||
}
|
}
|
||||||
mg_tcpip_call(ifp, MG_TCPIP_EV_ST_CHG, &ifp->state);
|
mg_tcpip_call(ifp, MG_TCPIP_EV_STATE_CHANGE, &ifp->state);
|
||||||
}
|
}
|
||||||
|
|
||||||
static struct ip *tx_ip(struct mg_tcpip_if *ifp, uint8_t *mac_dst,
|
static struct ip *tx_ip(struct mg_tcpip_if *ifp, uint8_t *mac_dst,
|
||||||
|
|||||||
@@ -27,12 +27,12 @@ static unsigned int state;
|
|||||||
|
|
||||||
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
// TODO(): should we include this inside ifp ? add an fn_data ?
|
// TODO(): should we include this inside ifp ? add an fn_data ?
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE) {
|
||||||
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
||||||
}
|
}
|
||||||
switch(state) {
|
switch(state) {
|
||||||
case AP: // we are in AP mode, wait for a user connection to trigger a scan or a connection to a network
|
case AP: // we are in AP mode, wait for a user connection to trigger a scan or a connection to a network
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("Access Point READY !"));
|
MG_INFO(("Access Point READY !"));
|
||||||
|
|
||||||
// simulate user request to scan for networks
|
// simulate user request to scan for networks
|
||||||
@@ -57,7 +57,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STOPPING_AP:
|
case STOPPING_AP:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_nxp_wifi_data *) ifp->driver_data)->wifi;
|
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_nxp_wifi_data *) ifp->driver_data)->wifi;
|
||||||
wifi->apmode = false;
|
wifi->apmode = false;
|
||||||
|
|
||||||
@@ -70,7 +70,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case CONNECTING:
|
case CONNECTING:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("READY!"));
|
MG_INFO(("READY!"));
|
||||||
state = READY;
|
state = READY;
|
||||||
|
|
||||||
@@ -84,7 +84,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
break;
|
break;
|
||||||
case READY:
|
case READY:
|
||||||
// go back to AP mode after a disconnection (simulation 2/2), you could retry
|
// go back to AP mode after a disconnection (simulation 2/2), you could retry
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_nxp_wifi_data *) ifp->driver_data)->wifi;
|
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_nxp_wifi_data *) ifp->driver_data)->wifi;
|
||||||
bool res = mg_wifi_ap_start(wifi);
|
bool res = mg_wifi_ap_start(wifi);
|
||||||
MG_INFO(("Disconnected"));
|
MG_INFO(("Disconnected"));
|
||||||
|
|||||||
@@ -183,13 +183,13 @@ static unsigned int state;
|
|||||||
|
|
||||||
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
// TODO(): should we include this inside ifp ? add an fn_data ?
|
// TODO(): should we include this inside ifp ? add an fn_data ?
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE) {
|
||||||
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
||||||
}
|
}
|
||||||
switch (state) {
|
switch (state) {
|
||||||
case AP: // we are in AP mode, wait for a user connection to trigger a scan
|
case AP: // we are in AP mode, wait for a user connection to trigger a scan
|
||||||
// or a connection to a network
|
// or a connection to a network
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG &&
|
if (ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("Access Point READY !"));
|
MG_INFO(("Access Point READY !"));
|
||||||
|
|
||||||
@@ -219,7 +219,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STOPPING_AP:
|
case STOPPING_AP:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG &&
|
if (ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
||||||
@@ -234,7 +234,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case CONNECTING:
|
case CONNECTING:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG &&
|
if (ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("READY!"));
|
MG_INFO(("READY!"));
|
||||||
state = READY;
|
state = READY;
|
||||||
@@ -251,7 +251,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
case READY:
|
case READY:
|
||||||
// go back to AP mode after a disconnection (simulation 2/2), you could
|
// go back to AP mode after a disconnection (simulation 2/2), you could
|
||||||
// retry
|
// retry
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG &&
|
if (ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
||||||
|
|||||||
@@ -17,13 +17,13 @@ static unsigned int state;
|
|||||||
|
|
||||||
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
// TODO(): should we include this inside ifp ? add an fn_data ?
|
// TODO(): should we include this inside ifp ? add an fn_data ?
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE) {
|
||||||
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
||||||
}
|
}
|
||||||
switch (state) {
|
switch (state) {
|
||||||
case AP: // we are in AP mode, wait for a user connection to trigger a scan
|
case AP: // we are in AP mode, wait for a user connection to trigger a scan
|
||||||
// or a connection to a network
|
// or a connection to a network
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG &&
|
if (ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("Access Point READY !"));
|
MG_INFO(("Access Point READY !"));
|
||||||
|
|
||||||
@@ -53,7 +53,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STOPPING_AP:
|
case STOPPING_AP:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG &&
|
if (ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_pico_w_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_pico_w_data *) ifp->driver_data)->wifi;
|
||||||
@@ -68,7 +68,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case CONNECTING:
|
case CONNECTING:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG &&
|
if (ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("READY!"));
|
MG_INFO(("READY!"));
|
||||||
state = READY;
|
state = READY;
|
||||||
@@ -85,7 +85,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
case READY:
|
case READY:
|
||||||
// go back to AP mode after a disconnection (simulation 2/2), you could
|
// go back to AP mode after a disconnection (simulation 2/2), you could
|
||||||
// retry
|
// retry
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG &&
|
if (ev == MG_TCPIP_EV_STATE_CHANGE &&
|
||||||
*(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
*(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi =
|
struct mg_wifi_data *wifi =
|
||||||
&((struct mg_tcpip_driver_pico_w_data *) ifp->driver_data)->wifi;
|
&((struct mg_tcpip_driver_pico_w_data *) ifp->driver_data)->wifi;
|
||||||
|
|||||||
@@ -89,12 +89,12 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
if (ev == MG_TCPIP_EV_DRIVER) {
|
if (ev == MG_TCPIP_EV_DRIVER) {
|
||||||
spi_setup(CYWSPI, 3); // /16: 2.8MHz SPI3, 5.6MHz SPI1 (< 50MHz)
|
spi_setup(CYWSPI, 3); // /16: 2.8MHz SPI3, 5.6MHz SPI1 (< 50MHz)
|
||||||
}
|
}
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE) {
|
||||||
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
||||||
}
|
}
|
||||||
switch(state) {
|
switch(state) {
|
||||||
case AP: // we are in AP mode, wait for a user connection to trigger a scan or a connection to a network
|
case AP: // we are in AP mode, wait for a user connection to trigger a scan or a connection to a network
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("Access Point READY !"));
|
MG_INFO(("Access Point READY !"));
|
||||||
|
|
||||||
// simulate user request to scan for networks
|
// simulate user request to scan for networks
|
||||||
@@ -119,7 +119,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STOPPING_AP:
|
case STOPPING_AP:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
||||||
wifi->apmode = false;
|
wifi->apmode = false;
|
||||||
|
|
||||||
@@ -132,7 +132,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case CONNECTING:
|
case CONNECTING:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("READY!"));
|
MG_INFO(("READY!"));
|
||||||
state = READY;
|
state = READY;
|
||||||
|
|
||||||
@@ -146,7 +146,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
break;
|
break;
|
||||||
case READY:
|
case READY:
|
||||||
// go back to AP mode after a disconnection (simulation 2/2), you could retry
|
// go back to AP mode after a disconnection (simulation 2/2), you could retry
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
||||||
bool res = mg_wifi_ap_start(wifi);
|
bool res = mg_wifi_ap_start(wifi);
|
||||||
MG_INFO(("Disconnected"));
|
MG_INFO(("Disconnected"));
|
||||||
|
|||||||
@@ -89,12 +89,12 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
if (ev == MG_TCPIP_EV_DRIVER) {
|
if (ev == MG_TCPIP_EV_DRIVER) {
|
||||||
spi_setup(CYWSPI, 3); // /16: 3.4MHz SPI3, 6.75MHz SPI1 (< 50MHz)
|
spi_setup(CYWSPI, 3); // /16: 3.4MHz SPI3, 6.75MHz SPI1 (< 50MHz)
|
||||||
}
|
}
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE) {
|
||||||
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
||||||
}
|
}
|
||||||
switch(state) {
|
switch(state) {
|
||||||
case AP: // we are in AP mode, wait for a user connection to trigger a scan or a connection to a network
|
case AP: // we are in AP mode, wait for a user connection to trigger a scan or a connection to a network
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("Access Point READY !"));
|
MG_INFO(("Access Point READY !"));
|
||||||
|
|
||||||
// simulate user request to scan for networks
|
// simulate user request to scan for networks
|
||||||
@@ -119,7 +119,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case STOPPING_AP:
|
case STOPPING_AP:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
||||||
wifi->apmode = false;
|
wifi->apmode = false;
|
||||||
|
|
||||||
@@ -132,7 +132,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case CONNECTING:
|
case CONNECTING:
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_READY) {
|
||||||
MG_INFO(("READY!"));
|
MG_INFO(("READY!"));
|
||||||
state = READY;
|
state = READY;
|
||||||
|
|
||||||
@@ -146,7 +146,7 @@ static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
break;
|
break;
|
||||||
case READY:
|
case READY:
|
||||||
// go back to AP mode after a disconnection (simulation 2/2), you could retry
|
// go back to AP mode after a disconnection (simulation 2/2), you could retry
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && *(uint8_t *) ev_data == MG_TCPIP_STATE_DOWN) {
|
||||||
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
struct mg_wifi_data *wifi = &((struct mg_tcpip_driver_cyw_data *) ifp->driver_data)->wifi;
|
||||||
bool res = mg_wifi_ap_start(wifi);
|
bool res = mg_wifi_ap_start(wifi);
|
||||||
MG_INFO(("Disconnected"));
|
MG_INFO(("Disconnected"));
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ static void mqtt_ev_handler(struct mg_connection *c, int ev, void *ev_data) {
|
|||||||
|
|
||||||
static void if_ev_handler(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void if_ev_handler(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
// Trigger MQTT connection when we have an IP address
|
// Trigger MQTT connection when we have an IP address
|
||||||
if (ifp->state == MG_TCPIP_STATE_READY && ev == MG_TCPIP_EV_ST_CHG) {
|
if (ifp->state == MG_TCPIP_STATE_READY && ev == MG_TCPIP_EV_STATE_CHANGE) {
|
||||||
struct mg_mqtt_opts opts = {.clean = true};
|
struct mg_mqtt_opts opts = {.clean = true};
|
||||||
// mg_mqtt_connect(ifp->mgr, MQTT_URL, &opts, mqtt_ev_handler, NULL);
|
// mg_mqtt_connect(ifp->mgr, MQTT_URL, &opts, mqtt_ev_handler, NULL);
|
||||||
mg_mqtt_connect(ifp->mgr, MQTTS_URL, &opts, mqtt_ev_handler, "tls enabled");
|
mg_mqtt_connect(ifp->mgr, MQTTS_URL, &opts, mqtt_ev_handler, "tls enabled");
|
||||||
@@ -185,7 +185,7 @@ static void if_ev_handler(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
|||||||
if (ip == 0) ip = MG_IPV4(169, 254, 2, 100);
|
if (ip == 0) ip = MG_IPV4(169, 254, 2, 100);
|
||||||
|
|
||||||
// restart process on link change
|
// restart process on link change
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG && ifp->state == MG_TCPIP_STATE_DOWN) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE && ifp->state == MG_TCPIP_STATE_DOWN) {
|
||||||
ifp->ip = 0;
|
ifp->ip = 0;
|
||||||
counter = 0;
|
counter = 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ static size_t tap_rx(void *buf, size_t len, struct mg_tcpip_if *ifp) {
|
|||||||
char *s_sntp = NULL;
|
char *s_sntp = NULL;
|
||||||
|
|
||||||
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
static void mif_fn(struct mg_tcpip_if *ifp, int ev, void *ev_data) {
|
||||||
if (ev == MG_TCPIP_EV_ST_CHG) {
|
if (ev == MG_TCPIP_EV_STATE_CHANGE) {
|
||||||
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
MG_INFO(("State change: %u", *(uint8_t *) ev_data));
|
||||||
} else if (ev == MG_TCPIP_EV_DHCP_DNS) {
|
} else if (ev == MG_TCPIP_EV_DHCP_DNS) {
|
||||||
MG_INFO(("Got DNS from DHCP: %M", mg_print_ip4, (uint32_t *) ev_data));
|
MG_INFO(("Got DNS from DHCP: %M", mg_print_ip4, (uint32_t *) ev_data));
|
||||||
|
|||||||
Reference in new issue
Block a user