zephyr/subsys/net/ip
Jukka Rissanen 03e1872def net: tcp: Change locking order in connection establishment
When application calls TCP connect(), the call is blocked
by a semaphore which is then released when the connection
is established. Unfortunately the semaphore release was done
before the connection was marked as established. Depending
on the configuration options set, it is possible that after
the semaphore release, the thread that is waiting on connect()
is run immediately. Because of this, the connection bookeeping
still thought that the connection was not established even if
it was. A simple solution is to release the semaphore after
the connection is marked as established.

Fixes #35390

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2021-05-19 07:52:26 -05:00
..
6lo_private.h
6lo.c net/6lo: First buffer fragment should hold the full compressed header 2021-02-04 07:36:16 -05:00
6lo.h
canbus_socket.c
canbus_socket.h
CMakeLists.txt net: ipv4: Add IGMPv2 support 2021-04-29 14:49:55 +03:00
connection.c net: socket: Implement SO_BINDTODEVICE socket option 2021-04-02 07:23:17 -04:00
connection.h net: socket: Implement SO_BINDTODEVICE socket option 2021-04-02 07:23:17 -04:00
dhcpv4.c net: dhcpv4: use dns_resolve_reconfigure() API 2021-04-29 08:00:09 -04:00
dhcpv4.h
icmpv4.c net: icmpv4: fix broadcast ping reply bug 2021-04-15 10:43:51 +03:00
icmpv4.h
icmpv6.c
icmpv6.h
igmp.c net: igmp: Fix uninitialized variable 2021-05-11 15:44:50 -05:00
ipv4_autoconf_internal.h
ipv4_autoconf.c net: Conversion of k_work API 2021-04-14 07:07:40 -04:00
ipv4.c net: ipv4: Add IGMPv2 support 2021-04-29 14:49:55 +03:00
ipv4.h net: ipv4: Add IGMPv2 support 2021-04-29 14:49:55 +03:00
ipv6_fragment.c net: Conversion of k_work API 2021-04-14 07:07:40 -04:00
ipv6_mld.c
ipv6_nbr.c net: Conversion of k_work API 2021-04-14 07:07:40 -04:00
ipv6.c net: virtual: Add virtual network interface support 2021-03-29 07:40:24 -04:00
ipv6.h net: Conversion of k_work API 2021-04-14 07:07:40 -04:00
Kconfig net: enable TX thread if USB device support is enabled 2021-05-18 11:21:51 -05:00
Kconfig.debug
Kconfig.ipv4 net: ipv4: Add IGMPv2 support 2021-04-29 14:49:55 +03:00
Kconfig.ipv6
Kconfig.mgmt net: mgmt: Use proper coop thread priority value 2021-02-17 16:42:15 +02:00
Kconfig.stack
Kconfig.stats net: stats: Add IGMP statistics support 2021-04-29 14:49:55 +03:00
nbr.c
nbr.h
net_context.c net: Remove support for CONFIG_NET_CONTEXT_TIMESTAMP option 2021-04-26 10:46:43 +03:00
net_core.c net: Use k_fifo instead of k_work in RX and TX processing 2021-05-07 09:46:44 -05:00
net_if.c net: if: Do not check IPv4 multicast addr when selecting src addr 2021-05-11 09:51:31 +03:00
net_mgmt.c kernel: sem: add K_SEM_MAX_LIMIT 2021-03-05 08:13:53 -06:00
net_pkt.c net: pkt: Have separate create time for net_pkt 2021-04-27 12:02:19 +03:00
net_private.h net: Use k_fifo instead of k_work in RX and TX processing 2021-05-07 09:46:44 -05:00
net_shell.c net: shell: Fix crash when invoking dns command in shell 2021-05-11 09:52:10 +03:00
net_shell.h
net_stats.c
net_stats.h net: stats: Add IGMP statistics support 2021-04-29 14:49:55 +03:00
net_tc_mapping.h net: Enable running without TX or RX threads 2021-04-27 12:02:19 +03:00
net_tc.c net: Use k_fifo instead of k_work in RX and TX processing 2021-05-07 09:46:44 -05:00
net_timeout.c net: timeout: refactor to fix multiple problems 2021-01-07 11:14:38 +02:00
packet_socket.c net: socket: packet: using pckt sckt for passing the PPP dialup data 2021-04-01 09:43:56 +03:00
packet_socket.h net: socket: packet: using pckt sckt for passing the PPP dialup data 2021-04-01 09:43:56 +03:00
promiscuous.c
route.c
route.h
tcp2_priv.h net: Conversion of k_work API 2021-04-14 07:07:40 -04:00
tcp2.c net: tcp: Change locking order in connection establishment 2021-05-19 07:52:26 -05:00
tcp2.h
tcp_internal.h net: Remove legacy TCP stack 2021-03-22 13:06:54 -04:00
tp_priv.h
tp.c
tp.h
trickle.c net: trickle: Do not initialize a work item from its handler 2021-04-27 19:48:16 +03:00
udp_internal.h net: socket: Implement SO_BINDTODEVICE socket option 2021-04-02 07:23:17 -04:00
udp.c net: socket: Implement SO_BINDTODEVICE socket option 2021-04-02 07:23:17 -04:00
utils.c net: ipv4: Add IGMPv2 support 2021-04-29 14:49:55 +03:00