mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-09 21:22:04 +00:00
net_pkt_clone() initializes the original packet cursor and clone the packet. But it doesn't restore the cursor back to original position. Issue noticed when mDNS resolving fails when mdns responder is also enabled. net_conn_input(), in case of multicast packet, connection handler clone the packet and deliver to matching handler. Example case: dns_resolver and mdns_responder both register handlers for 5353 port. After first clone original packet cursor moved back to starting position. But first cloned packet cursor is set properly. Second time cloning makes cursor position to set to zero. Which makes second packet handler header unpacking goes wrong. Fixes #21970. Signed-off-by: Ravi kumar Veeramally <ravikumar.veeramally@linux.intel.com> |
||
---|---|---|
.. | ||
6lo_private.h | ||
6lo.c | ||
6lo.h | ||
canbus_socket.c | ||
canbus_socket.h | ||
CMakeLists.txt | ||
connection.c | ||
connection.h | ||
dhcpv4.c | ||
dhcpv4.h | ||
icmpv4.c | ||
icmpv4.h | ||
icmpv6.c | ||
icmpv6.h | ||
ipv4_autoconf_internal.h | ||
ipv4_autoconf.c | ||
ipv4.c | ||
ipv4.h | ||
ipv6_fragment.c | ||
ipv6_mld.c | ||
ipv6_nbr.c | ||
ipv6.c | ||
ipv6.h | ||
Kconfig | ||
Kconfig.debug | ||
Kconfig.ipv4 | ||
Kconfig.ipv6 | ||
Kconfig.mgmt | ||
Kconfig.stack | ||
Kconfig.stats | ||
nbr.c | ||
nbr.h | ||
net_context.c | ||
net_core.c | ||
net_if.c | ||
net_mgmt.c | ||
net_pkt.c | ||
net_private.h | ||
net_shell.c | ||
net_shell.h | ||
net_stats.c | ||
net_stats.h | ||
net_tc_mapping.h | ||
net_tc.c | ||
packet_socket.c | ||
packet_socket.h | ||
promiscuous.c | ||
route.c | ||
route.h | ||
tcp_internal.h | ||
tcp.c | ||
tcp2_priv.h | ||
tcp2.c | ||
tcp2.h | ||
tp_priv.h | ||
tp.c | ||
tp.h | ||
trickle.c | ||
udp_internal.h | ||
udp.c | ||
utils.c |