nuttx/net/devif
Zhe Weng 34ade7a0b6 net/devif: fix devif_poll loop logic
Previously, the devif_poll works in this flow:
devif_poll_xx -> bstop = callback -> continue if !bstop -> poll another

Now we split the polling and callback, so it should work like:
devif_poll_connections -> return true if callback need to be called
   -> bstop = callback -> loop if !bstop -> poll again

Conditions:
poll_connections == 0, d_len == 0, break, return 0
poll_connections == 1, d_len == 0, break, return 1 (other stop case,
                                                    don't callback)
poll_connections == 1, d_len > 0, callback == 1, break, return 1
poll_connections == 1, d_len > 0, callback == 0, loop

Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
2022-12-30 21:25:59 +08:00
..
devif_callback.c net: cleanup pvconn reference to avoid confuse 2022-08-26 20:58:11 +08:00
devif_cansend.c net/devif_send: replace all block send to nonblock mode 2022-12-08 09:53:15 +01:00
devif_forward.c net/ipfwd: fix devif_forward after IOB offload. 2022-12-06 17:03:47 +08:00
devif_initialize.c
devif_iobsend.c net/devif: replace redundant code to iob_clone_partial() 2022-12-14 21:37:20 +08:00
devif_loopback.c net/devif_loopback: Add robustness to avoid infinite loop 2022-12-24 16:20:17 +08:00
devif_pktsend.c net/devif_send: replace all block send to nonblock mode 2022-12-08 09:53:15 +01:00
devif_poll.c net/devif: fix devif_poll loop logic 2022-12-30 21:25:59 +08:00
devif_send.c net/devif_send: replace all block send to nonblock mode 2022-12-08 09:53:15 +01:00
devif.h net/d_buf: remove d_buf reference from l3/l4 2022-12-04 20:37:14 +08:00
ipv4_input.c net/ip: return success if the packet was forwarded. 2022-12-04 15:59:43 -03:00
ipv6_input.c net/ip: return success if the packet was forwarded. 2022-12-04 15:59:43 -03:00
Make.defs net/l2/l3/l4: add support of iob offload 2022-12-03 11:47:04 +08:00