mirror of
https://github.com/espressif/esp-idf
synced 2025-03-10 09:39:10 -04:00
esp_netif: Fixed SLIP input to support size longer than 256
Implement batch processing of incoming slip data. Merges https://github.com/espressif/esp-idf/pull/5928
This commit is contained in:
parent
f806261964
commit
a92ae03b1e
@ -166,7 +166,13 @@ void esp_netif_lwip_slip_input(void *h, void *buffer, unsigned int len, void *eb
|
||||
ESP_LOG_BUFFER_HEXDUMP(TAG, buffer, len, ESP_LOG_DEBUG);
|
||||
|
||||
// Update slip netif with data
|
||||
slipif_received_bytes(netif->lwip_netif, buffer, len);
|
||||
const int max_batch = 255;
|
||||
int sent = 0;
|
||||
while(sent < len) {
|
||||
int batch = (len - sent) > max_batch ? max_batch : (len - sent);
|
||||
slipif_received_bytes(netif->lwip_netif, buffer+sent, batch);
|
||||
sent += batch;
|
||||
}
|
||||
|
||||
// Process incoming bytes
|
||||
for (int i = 0; i < len; i++) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user