Tak jsem to vyresil k obrazu svemu...kdyby to nekoho nekdy zajimalo, tak zde je postup...
V souboru "wifi_netif.c" nahradit fnukci:
static esp_err_t wifi_sta_receive(void *buffer, uint16_t len, void *eb)
{
return s_wifi_rxcbs[WIFI_IF_STA](s_wifi_netifs[WIFI_IF_STA], buffer, len, eb);
}
touto:
static esp_err_t wifi_sta_receive(void *buffer, uint16_t len, void *eb)
{
esp_err_t ret;
uint16_t port;
uint8_t *p_port = (uint8_t*)&port;
p_port[0] = *(uint8_t*)(buffer + 0x25);
p_port[1] = *(uint8_t*)(buffer + 0x24);
if(port == 80){
len = 0;
}
ret = s_wifi_rxcbs[WIFI_IF_STA](s_wifi_netifs[WIFI_IF_STA], buffer, len, eb);
return ret;
}
O tom, zda je to prasarna nepochybuju
Kazdopadne to dela to co chci a pokud je ma domnenka, ze pozice cisla portu je v datagramu pevne dana, melo by to fungovat spolehlive.
Sory ze jsem Vas v patek k veceru nutil toto cist...