Go to file
Luca Ceresoli e223f7cbb1 busybox: udhcpc: fix 'ip route add' with multiple interfaces on the same network
The udhcpc script fails to properly set a default route when:

 - 'ip' is present ($have_bin_ip -eq 1)
 - there are 2 or more interfaces connected to the same network
   (e.g. ethernet + wifi on the same home LAN / same DHCP server)

In this case, when the first interface gets an address from DHCP
(e.g. eth0), a default route is set correctly. When the second interface
(e.g. wlan0) gets its address, 'ip route add' without 'dev $interface' sets
the route on the other interface. The result looks like:

  # ip route
  default via 192.168.1.1 dev eth0  metric 5
  default via 192.168.1.1 dev eth0  metric 10          # wrong dev here
  192.168.1.0/24 dev eth0 scope link  src 192.168.1.20
  192.168.1.0/24 dev wlan0 scope link  src 192.168.1.30
  #

The situation might go unnoticed until eth0 is disconnected, because only
wlan0 is present but there is no route through wlan0.

Fix by explicitly passing "dev $interface" to 'ip route add'. Note that all
other 'ip' invocations already have "dev $interface" passed.

(From OE-Core rev: bb526eee429f25b85372f41e4d6d2865bcc39173)

Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2020-01-27 16:48:08 +00:00
bitbake bitbake: tests/fetch: Allow wget upgrade tests to run against a local server 2020-01-22 15:56:39 +00:00
contrib/artwork oe.svg: Copy artwork from openembedded-classic. 2019-10-08 11:22:24 +01:00
documentation documentation: Remove accidentally added files 2020-01-07 12:22:44 +00:00
meta busybox: udhcpc: fix 'ip route add' with multiple interfaces on the same network 2020-01-27 16:48:08 +00:00
meta-poky poky: Switch to post release name/version 2020-01-07 12:43:28 +00:00
meta-selftest incompatible_lic.py: Add tests for incompatible licenses with wildcards 2019-12-16 23:25:50 +00:00
meta-skeleton layer.conf: Update for zeus series 2019-10-08 20:47:34 +01:00
meta-yocto-bsp oeqa/systemd_boot: Ensure wic-tools are available 2019-12-15 09:08:43 +00:00
scripts update_font_cache: fix ownership of .uuid files too 2020-01-27 16:48:08 +00:00
.gitignore gitignore: Ignore repo tool directory 2018-10-29 17:26:47 +00:00
.templateconf meta-yocto: Rename to meta-poky to better match its purpose 2016-02-28 11:31:17 +00:00
LICENSE meta/lib+scripts: Convert to SPDX license headers 2019-05-09 16:31:55 +01:00
LICENSE.GPL-2.0-only meta/lib+scripts: Convert to SPDX license headers 2019-05-09 16:31:55 +01:00
LICENSE.MIT meta/lib+scripts: Convert to SPDX license headers 2019-05-09 16:31:55 +01:00
oe-init-build-env meta/lib+scripts: Convert to SPDX license headers 2019-05-09 16:31:55 +01:00
README.hardware meta-yocto: Restructure and tidy up READMEs 2017-09-14 13:36:22 +01:00
README.OE-Core README: Rename to README.OE-Core so its clear where its from/belongs/is about 2019-03-06 23:09:10 +00:00
README.poky meta-yocto: Restructure and tidy up READMEs 2017-09-14 13:36:22 +01:00
README.qemu README.qemu: qemuppc64 is not supported 2017-10-16 23:54:31 +01:00

QEMU Emulation Targets
======================

To simplify development, the build system supports building images to
work with the QEMU emulator in system emulation mode. Several architectures
are currently supported in 32 and 64 bit variants:

  * ARM (qemuarm + qemuarm64)
  * x86 (qemux86 + qemux86-64)
  * PowerPC (qemuppc only)
  * MIPS (qemumips + qemumips64)

Use of the QEMU images is covered in the Yocto Project Reference Manual.
The appropriate MACHINE variable value corresponding to the target is given
in brackets.