Go to file
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
.buildkite ci: Rename leftover Sanitycheck occurances 2020-12-14 16:46:44 -05:00
.github ci: remove block copypasta in compliance check 2020-12-18 07:50:08 -06:00
.known-issues doc: update known-issues for Sphinx==3.3.0 2020-11-03 15:27:37 +01:00
arch arch: arm: cortex_r: disable ECC on TCMs 2020-12-27 18:16:00 +01:00
boards boards: sam_e70_xplained: default enable EEPROM source for MAC address 2020-12-28 13:07:46 +02:00
cmake cmake: dts: remove stale error 2020-12-22 07:34:29 -06:00
doc doc: scripts: fix parsing directive inside literal 2020-12-21 13:23:03 +01:00
drivers gpio: esp32: retrieve pinmux from devicetree reference 2020-12-27 18:19:27 +01:00
dts dts: mtd: add support for a file system table in devicetree 2020-12-27 18:16:20 +01:00
include device: support generating defines from devicetree nodes with no label 2020-12-27 18:19:27 +01:00
kernel kernel: idle: fix builds with PM but no system clock 2020-12-27 18:18:52 +01:00
lib lib/os/heap: add missing realloc semantics 2020-12-18 14:07:09 -05:00
misc
modules arm: V2M Musca-S1: Add Musca-S1 SoC and board support 2020-12-20 13:03:49 -05:00
samples samples: littlefs: use DT-defined mount information 2020-12-27 18:16:20 +01:00
scripts runners: nsim: allow to use runner if gdb is missing 2020-12-27 18:19:10 +01:00
share cmake: Zephyr CMake package clean-up and minor fix 2020-08-19 12:52:33 -04:00
soc drivers/timer: Remove legacy APIC driver 2020-12-27 18:19:17 +01:00
subsys net: dhcp: fix timeout on entry to bound state 2021-01-04 10:02:58 +02:00
tests tests: spinlock: add some error test cases 2020-12-27 18:19:42 +01:00
.checkpatch.conf checkpatch: disable PREFER_SECTION 2020-10-30 15:51:46 +01:00
.clang-format clang-format: Update with latest FOR_EACH macro list 2020-05-02 11:23:13 -04:00
.codecov.yml
.editorconfig editorconfig: indent Kconfig files with tabs 2020-07-08 21:30:38 -04:00
.gitattributes gitattributes: Tell linguist to ignore test pattern files 2020-04-23 14:07:57 -04:00
.gitignore gitignore: add twister-out 2020-12-11 14:13:02 -05:00
.gitlint
.mailmap
.uncrustify.cfg
CMakeLists.txt cmake: using zephyr_get_compile_options_for_lang_as_string() 2020-12-03 09:23:07 -05:00
CODE_OF_CONDUCT.md
CODEOWNERS CODEOWNERS: Update path to usb_dfu.c 2020-12-21 05:18:13 -05:00
CONTRIBUTING.rst
Kconfig
Kconfig.zephyr Kconfig.zephyr: allow override default values in module Kconfig files 2020-12-10 08:00:57 -05:00
LICENSE
MAINTAINERS.yml maintainers: rename sanitycheck 2020-12-11 14:13:02 -05:00
Makefile doc: provide a target to only generate doxygen 2020-04-11 08:40:54 -04:00
README.rst doc: Replace shippable badge with buildkite badge 2020-07-14 07:21:44 -05:00
VERSION release: Update patch level to 99 after the 2.4.0 release 2020-09-27 15:15:49 -05:00
version.h.in
west.yml west.yml: stm32: Update stm32wb hci lib 2020-12-16 12:20:11 -05:00
zephyr-env.cmd
zephyr-env.sh

.. raw:: html

   <a href="https://www.zephyrproject.org">
     <p align="center">
       <img src="doc/images/Zephyr-Project.png">
     </p>
   </a>

   <a href="https://bestpractices.coreinfrastructure.org/projects/74"><img
   src="https://bestpractices.coreinfrastructure.org/projects/74/badge"></a>
   <a href="https://buildkite.com/zephyr/zephyr">
   <img
   src="https://badge.buildkite.com/f5bd0dc88306cee17c9b38e78d11bb74a6291e3f40e7d13f31.svg?branch=master"></a>


The Zephyr Project is a scalable real-time operating system (RTOS) supporting
multiple hardware architectures, optimized for resource constrained devices,
and built with security in mind.

The Zephyr OS is based on a small-footprint kernel designed for use on
resource-constrained systems: from simple embedded environmental sensors and
LED wearables to sophisticated smart watches and IoT wireless gateways.

The Zephyr kernel supports multiple architectures, including ARM Cortex-M,
Intel x86, ARC, Nios II, Tensilica Xtensa, and RISC-V, and a large number of
`supported boards`_.

.. below included in doc/introduction/introduction.rst

.. start_include_here

Getting Started
***************

Welcome to Zephyr! See the `Introduction to Zephyr`_ for a high-level overview,
and the documentation's `Getting Started Guide`_ to start developing.

Community Support
*****************

Community support is provided via mailing lists and Slack; see the Resources
below for details.

.. _project-resources:

Resources
*********

Here's a quick summary of resources to help you find your way around:

* **Help**: `Asking for Help Tips`_
* **Documentation**: http://docs.zephyrproject.org (`Getting Started Guide`_)
* **Source Code**: https://github.com/zephyrproject-rtos/zephyr is the main
  repository; https://elixir.bootlin.com/zephyr/latest/source contains a
  searchable index
* **Releases**: https://github.com/zephyrproject-rtos/zephyr/releases
* **Samples and example code**: see `Sample and Demo Code Examples`_
* **Mailing Lists**: users@lists.zephyrproject.org and
  devel@lists.zephyrproject.org are the main user and developer mailing lists,
  respectively. You can join the developer's list and search its archives at
  `Zephyr Development mailing list`_. The other `Zephyr mailing list
  subgroups`_ have their own archives and sign-up pages.
* **Nightly CI Build Status**: https://lists.zephyrproject.org/g/builds
  The builds@lists.zephyrproject.org mailing list archives the CI
  (shippable) nightly build results.
* **Chat**: Zephyr's Slack workspace is https://zephyrproject.slack.com.  Use
  this `Slack Invite`_ to register.
* **Contributing**: see the `Contribution Guide`_
* **Wiki**: `Zephyr GitHub wiki`_
* **Issues**: https://github.com/zephyrproject-rtos/zephyr/issues
* **Security Issues**: Email vulnerabilities@zephyrproject.org to report
  security issues; also see our `Security`_ documentation. Security issues are
  tracked separately at https://zephyrprojectsec.atlassian.net.
* **Zephyr Project Website**: https://zephyrproject.org

.. _Slack Invite: https://tinyurl.com/y5glwylp
.. _supported boards: http://docs.zephyrproject.org/latest/boards/index.html
.. _Zephyr Documentation: http://docs.zephyrproject.org
.. _Introduction to Zephyr: http://docs.zephyrproject.org/latest/introduction/index.html
.. _Getting Started Guide: http://docs.zephyrproject.org/latest/getting_started/index.html
.. _Contribution Guide: http://docs.zephyrproject.org/latest/contribute/index.html
.. _Zephyr GitHub wiki: https://github.com/zephyrproject-rtos/zephyr/wiki
.. _Zephyr Development mailing list: https://lists.zephyrproject.org/g/devel
.. _Zephyr mailing list subgroups: https://lists.zephyrproject.org/g/main/subgroups
.. _Sample and Demo Code Examples: http://docs.zephyrproject.org/latest/samples/index.html
.. _Security: http://docs.zephyrproject.org/latest/security/index.html
.. _Asking for Help Tips: https://docs.zephyrproject.org/latest/guides/getting-help.html