zephyr/subsys/net/ip
Robert Lubos 43a86b8138 net: tcp: Fix packet processing result reporting
TCP implementation abused the packet processing result reporting
mechanism, by reporting NET_DROP for every packet other than data
packets (which were passed to the application). This simplified the TCP
implementation a bit, as it didn't need to deal with packet releasing.
While technically it worked, it gave incorrect results when it comes to
packet statistics, as a lot of valid TCP packets were counted as
dropped.

This commit fixes this. Each packet that was properly processed by the
TCP stack is not either released at the TCP level, or passed to the
application. In both cases, NET_OK is returned to the network core,
indicating the packet has been properly processed and consumed.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2023-02-23 09:07:52 +01:00
..
6lo_private.h
6lo.c net: ip: 6lo: Fix corner case with packet format after IPHC 2023-02-19 20:33:36 -05:00
6lo.h
canbus_socket.c net: core: clean up inbound packet handling 2022-09-05 14:35:17 +00:00
canbus_socket.h
CMakeLists.txt net: ipv4: Add fragmented packet support 2022-11-05 19:58:26 +01:00
connection.c net: conn: Fix issues with SMP in connection code 2022-11-24 15:23:11 +01:00
connection.h net: lib: sockets: improve scalability through a hidden var 2022-09-05 14:35:17 +00:00
dhcpv4.c net: dhcpv4: Do not proceed with DHCPv4 when interface is down 2023-02-08 11:26:42 +01:00
dhcpv4.h
icmpv4.c net: icmp: Allow to autogenerate Echo Request payload 2022-11-19 07:34:45 -05:00
icmpv4.h net: icmp: Allow to autogenerate Echo Request payload 2022-11-19 07:34:45 -05:00
icmpv6.c net: icmpv6: fix if need calc tx checksum 2022-11-28 10:47:20 +01:00
icmpv6.h net: icmpv6: Implement IPv6 RA Recursive DNS Server option 2023-02-21 10:59:18 +01:00
igmp.c net: ipv4: Added mechanism to add 224.0.0.1 address to a multicast filter 2023-01-13 09:44:10 +01:00
ipv4_autoconf_internal.h includes: prefer <zephyr/kernel.h> over <zephyr/zephyr.h> 2022-09-05 16:31:47 +02:00
ipv4_autoconf.c net: ipv4: Fix subnet mask setting when autoconf is used 2023-02-06 10:10:54 +01:00
ipv4_fragment.c net: ipv4: Add fragmented packet support 2022-11-05 19:58:26 +01:00
ipv4.c net: ipv4: Add fragmented packet support 2022-11-05 19:58:26 +01:00
ipv4.h net: ipv4: Add fragmented packet support 2022-11-05 19:58:26 +01:00
ipv6_fragment.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
ipv6_mld.c net: ipv6: mld: Don't attempt to send a MLD query if iface is down 2023-02-08 11:26:42 +01:00
ipv6_nbr.c net: icmpv6: Initialize dns sockaddr in RA RDNSS 2023-02-22 14:26:39 +01:00
ipv6.c net: ipv6: Add support for setting/reading DSCP/ECN fields (TC) 2022-10-19 19:03:48 +02:00
ipv6.h net: ipv6: Add support for setting/reading DSCP/ECN fields (TC) 2022-10-19 19:03:48 +02:00
Kconfig Net: Bluetooth: add enough room to user data 2023-02-20 09:53:51 +01:00
Kconfig.debug
Kconfig.ipv4 net: ipv4: Added mechanism to add 224.0.0.1 address to a multicast filter 2023-01-13 09:44:10 +01:00
Kconfig.ipv6 net: icmpv6: Implement IPv6 RA Recursive DNS Server option 2023-02-21 10:59:18 +01:00
Kconfig.mgmt net: ip: net_mgmt: Increase default queue size 2023-02-21 10:58:10 +01:00
Kconfig.stack
Kconfig.stats wifi_mgmt: Add new API for Wi-Fi statistics 2022-08-31 21:49:47 +00:00
nbr.c all: logging: Remove log_strdup function 2022-06-23 13:42:23 +02:00
nbr.h
net_context.c net: tcp: Fix TCP connection ref counting 2023-01-26 12:34:04 +00:00
net_core.c net: ipv4: Add fragmented packet support 2022-11-05 19:58:26 +01:00
net_if.c net: ipv4: Implement fallback to LL address 2023-02-20 11:19:14 +01:00
net_mgmt.c net: ip: net_mgmt: Prevent loss of event 2023-02-21 10:58:10 +01:00
net_pkt.c net: pkt: Allow zero payload for non-IPv4/v6 frames 2023-02-06 10:04:03 +01:00
net_private.h net: ipv4: Added mechanism to add 224.0.0.1 address to a multicast filter 2023-01-13 09:44:10 +01:00
net_shell.c net: shell: Log missing Ethernet errors 2023-02-20 09:51:23 +01:00
net_shell.h
net_stats.c
net_stats.h
net_tc_mapping.h
net_tc.c all: Fix "#if IS_ENABLED(CONFIG_FOO)" occurrences 2022-12-21 10:09:23 +01:00
net_timeout.c
packet_socket.c all: Fix "#if IS_ENABLED(CONFIG_FOO)" occurrences 2022-12-21 10:09:23 +01:00
packet_socket.h
promiscuous.c
route.c net/route: Add missing lock in net_route_mcast_add() 2022-10-17 10:13:56 +02:00
route.h
tcp_internal.h net: tcp: Remove net_tcp_unref() 2023-01-26 12:34:04 +00:00
tcp_private.h all: Fix "#if IS_ENABLED(CONFIG_FOO)" occurrences 2022-12-21 10:09:23 +01:00
tcp.c net: tcp: Fix packet processing result reporting 2023-02-23 09:07:52 +01:00
tcp.h net: tcp: Remove net_tcp_unref() 2023-01-26 12:34:04 +00:00
tp_priv.h includes: prefer <zephyr/kernel.h> over <zephyr/zephyr.h> 2022-09-05 16:31:47 +02:00
tp.c
tp.h all: Fix "#if IS_ENABLED(CONFIG_FOO)" occurrences 2022-12-21 10:09:23 +01:00
trickle.c
udp_internal.h
udp.c
utils.c treewide: Use CONFIG_*_ENDIAN instead of __BYTE_ORDER__ 2022-10-28 19:23:46 +09:00