meta-digi/meta-digi-dey/recipes-connectivity/hostapd
Gabriel Valcazar b769f90e2a hostapd: rework postinst script to avoid lock-ups on first boot
The postinst script tries parsing the wireless MAC address from the sysfs, and
in case of failure, obtains a random string from /dev/urandom. This caused two
problems when booting with systemd:

 * The wifi interface's sysfs entry is not available because the interface
hasn't had time to start up yet, forcing the script to always resort to the
/dev/urandom fallback.
 * Even though the postinst scripts are run after populating the volatile
filesystems (as can be seen in run-postinsts.service's dependencies), trying
to read either /dev/random or /dev/urandom at this point in the system's
initialization causes it to lock up indefinitely.

To avoid either situation, add the following changes:

 * Immediately exit when running on a non-wireless target, as the script isn't
necessary in this use case.
 * Parse the wireless mac address from /proc/device-tree/wireless, which is
guaranteed to always be available when the script runs. By doing this, we can
remove the /dev/urandom fallback entirely.

https://jira.digi.com/browse/DEL-6415

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-02-18 18:01:57 +01:00
..
hostapd hostapd: add support for ccimx6qpsbc platform 2017-10-18 09:20:11 +02:00
hostapd_%.bbappend hostapd: rework postinst script to avoid lock-ups on first boot 2019-02-18 18:01:57 +01:00