mirror of
https://github.com/arendst/Tasmota.git
synced 2025-07-28 05:06:32 +00:00
commit
5defd5e158
@ -131,8 +131,11 @@ extern "C" {
|
|||||||
if ((p->len == p->tot_len) && (p->next == nullptr)) {
|
if ((p->len == p->tot_len) && (p->next == nullptr)) {
|
||||||
ip_addr_t ping_target;
|
ip_addr_t ping_target;
|
||||||
struct icmp_echo_hdr *iecho;
|
struct icmp_echo_hdr *iecho;
|
||||||
|
#ifdef ESP8266
|
||||||
ping_target.addr = ping->ip;
|
ping_target.addr = ping->ip;
|
||||||
|
#else
|
||||||
|
ping_target.u_addr.ip4.addr = ping->ip;
|
||||||
|
#endif
|
||||||
iecho = (struct icmp_echo_hdr *) p->payload;
|
iecho = (struct icmp_echo_hdr *) p->payload;
|
||||||
|
|
||||||
t_ping_prepare_echo(iecho, ping_size, ping);
|
t_ping_prepare_echo(iecho, ping_size, ping);
|
||||||
@ -167,7 +170,11 @@ extern "C" {
|
|||||||
// Reveived packet
|
// Reveived packet
|
||||||
//
|
//
|
||||||
static uint8_t ICACHE_FLASH_ATTR t_ping_recv(void *arg, struct raw_pcb *pcb, struct pbuf *p, const ip_addr_t *addr) {
|
static uint8_t ICACHE_FLASH_ATTR t_ping_recv(void *arg, struct raw_pcb *pcb, struct pbuf *p, const ip_addr_t *addr) {
|
||||||
|
#ifdef ESP8266
|
||||||
Ping_t *ping = t_ping_find(addr->addr);
|
Ping_t *ping = t_ping_find(addr->addr);
|
||||||
|
#else
|
||||||
|
Ping_t *ping = t_ping_find(addr->u_addr.ip4.addr);
|
||||||
|
#endif
|
||||||
|
|
||||||
if (nullptr == ping) { // unknown source address
|
if (nullptr == ping) { // unknown source address
|
||||||
return 0; // don't eat the packet and ignore it
|
return 0; // don't eat the packet and ignore it
|
||||||
|
Loading…
x
Reference in New Issue
Block a user