zephyr/subsys/net/ip
Peter Bigot b4ed597afe net: dhcp: fix timeout on entry to bound state
When a renewal occurs the client enters RENEWING, sends a request,
then sets a short timeout (about 4 s) for the response.  In the common
case the response will arrive immediately, which will trigger an
attempt to reset the timer with T1 which is generally large.

However the check for updating the timer performs the update only if
the new deadline is closer than the currently set one.  Thus the timer
fires at the time the RENEWING request would have been retransmitted,
and only then updates to the correct deadline (T1) for the current
machine state.

Remove the extra timeout by unconditionally setting the timeout to the
new value.

This works when there is one interface; it could be wrong if there
were multiple interfaces one of which had a closer deadline, but
multiple interfaces are mishandled anyway and will be fixed next.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-01-04 10:02:58 +02:00
..
6lo_private.h net: ip: 6lo (IPHC) uncompression rework 2019-07-25 15:19:28 +03:00
6lo.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
6lo.h cleanup: include/: move misc/slist.h to sys/slist.h 2019-06-27 22:55:49 -04:00
canbus_socket.c net: l2: 6LoCAN implementation 2019-08-08 13:25:01 +03:00
canbus_socket.h net: can: Add CAN handling to net_context 2019-02-07 18:08:27 +02:00
CMakeLists.txt cmake: fix include directories to work with out-of-tree arch 2020-08-05 08:06:07 -04:00
connection.c net: conn: Check that TCP pointer is valid 2020-09-28 14:25:13 +03:00
connection.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
dhcpv4.c net: dhcp: fix timeout on entry to bound state 2021-01-04 10:02:58 +02:00
dhcpv4.h net: dhcpv4: check dhcpv4 msg len is correct 2020-11-02 12:56:16 +02:00
icmpv4.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
icmpv4.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
icmpv6.c net: icmpv6: Store ll addresses to pkt when sending error msg 2020-10-23 09:29:27 +03:00
icmpv6.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
ipv4_autoconf_internal.h net/ethernet: Cleanup a bit on the usage of ifdefs 2019-07-10 15:24:32 +03:00
ipv4_autoconf.c guideline: Make explicit fallthrough cases 2020-08-24 20:28:47 -04:00
ipv4.c net: Fix access to already unref'ed packet data 2020-10-21 12:49:22 +03:00
ipv4.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
ipv6_fragment.c net: ipv6_fragment: fixed endian issue 2020-11-17 11:44:16 +02:00
ipv6_mld.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
ipv6_nbr.c guideline: Make explicit fallthrough cases 2020-08-24 20:28:47 -04:00
ipv6.c net: ipv6: fixed endian issue 2020-11-17 11:44:16 +02:00
ipv6.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
Kconfig net: tc: Refactor RX and TX thread priorities 2020-11-20 12:57:29 +02:00
Kconfig.debug kconfig: Clean up header comments and make them consistent 2019-11-04 17:31:27 -05:00
Kconfig.ipv4 net: DHCPv4 needs UDP to work properly 2020-09-23 13:28:38 -05:00
Kconfig.ipv6 net: openthread: Simplify openthread enabling 2020-06-30 07:48:08 -04:00
Kconfig.mgmt net: Adjust the thread priorities 2020-11-20 12:57:29 +02:00
Kconfig.stack kconfig: Clean up header comments and make them consistent 2019-11-04 17:31:27 -05:00
Kconfig.stats net/iface: Add PM suspend state statistics 2020-04-02 11:07:45 +03:00
nbr.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
nbr.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
net_context.c net: context: add net_context api to check if a port is bound 2020-11-09 16:15:02 -08:00
net_core.c net: Drop incoming packet if there is no data in it 2020-09-22 11:22:43 +02:00
net_if.c device: Const-ify all device driver instance pointers 2020-09-02 13:48:13 +02:00
net_mgmt.c net: Adjust the thread priorities 2020-11-20 12:57:29 +02:00
net_pkt.c net: buf: change avail_count variable to atomic type 2020-10-28 18:45:11 +02:00
net_private.h net: dhcpv4: Generate start/bound/stop mgmt events 2020-10-03 17:15:15 +03:00
net_shell.c net: shell: Fix statistics for network interface 2020-12-01 12:37:52 +02:00
net_shell.h net: shell: Migrate to new shell API 2018-10-15 11:14:02 +03:00
net_stats.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
net_stats.h net: stats: Separate dropped TCP data segments and TCP packets 2020-11-06 09:50:02 -06:00
net_tc_mapping.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
net_tc.c net: net_tc: change illicit reference to work queue internal state 2020-11-24 13:04:48 +02:00
packet_socket.c net: sockets: Add socket api to support AF_PACKET 2019-02-07 14:43:30 +02:00
packet_socket.h net: core: Handle packets when packet sockets are enabled 2019-02-07 14:43:30 +02:00
promiscuous.c net: promisc: Refactor because of timeout overhaul 2020-04-09 16:07:03 +03:00
route.c net: route: multicast routing feature 2020-08-19 09:46:25 -04:00
route.h net: route: multicast routing feature 2020-08-19 09:46:25 -04:00
tcp2_priv.h net: tcp2: Fix llvm issue when printing mss 2020-11-19 10:56:26 -05:00
tcp2.c net: tcp2: Use mutex instead of irq_lock 2020-12-15 12:16:19 +02:00
tcp2.h net: tcp2: compile out net_tcp_init() in tcp2.h for non-native stacks 2020-08-11 07:23:59 -05:00
tcp_internal.h net: tcp: Reorganize internal TCP header file 2020-11-16 16:07:10 +02:00
tcp.c net: tcp: Reset net_pkt creation time if packet is resent 2020-08-07 10:12:51 +03:00
tp_priv.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
tp.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
tp.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
trickle.c random: Include header where it is used 2020-07-08 21:05:36 -04:00
udp_internal.h zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
udp.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
utils.c net: ip: copy to wrong destination in z_vrfy_net_addr_pton() 2020-07-06 18:00:07 -04:00