[PATCH] build: add option to use preinit IP as LAN IP
stijn at linux-ipv6.be
stijn at linux-ipv6.be
Wed Dec 7 12:03:27 PST 2022
We currently have build options to customize the IP address used in the
preinit phase of the boot process, but not to set the default LAN IP.
Introduce a boolean build option that, when enabled, results in the IP
address configured for the preinit phase, to be also used as the default
LAN IP address.
Signed-off-by: Stijn Tintel <stijn at linux-ipv6.be>
---
package/base-files/Makefile | 13 +++++++++++++
package/base-files/image-config.in | 7 +++++++
2 files changed, 20 insertions(+)
diff --git a/package/base-files/Makefile b/package/base-files/Makefile
index 914f0598ff..8732f82fb9 100644
--- a/package/base-files/Makefile
+++ b/package/base-files/Makefile
@@ -89,6 +89,19 @@ define ImageConfigOptions
echo 'pi_preinit_net_messages="$(CONFIG_TARGET_PREINIT_SHOW_NETMSG)"' >>$(1)/lib/preinit/00_preinit.conf
echo 'pi_preinit_no_failsafe_netmsg="$(CONFIG_TARGET_PREINIT_SUPPRESS_FAILSAFE_NETMSG)"' >>$(1)/lib/preinit/00_preinit.conf
echo 'pi_preinit_no_failsafe="$(CONFIG_TARGET_PREINIT_DISABLE_FAILSAFE)"' >>$(1)/lib/preinit/00_preinit.conf
+ifeq ($(CONFIG_TARGET_DEFAULT_LAN_IP_FROM_PREINIT),y)
+ mkdir -p $(1)/etc/board.d
+ echo '. /lib/functions/uci-defaults.sh' >$(1)/etc/board.d/99-lan-ip
+ echo 'logger -t 99-lan-ip "setting custom default LAN IP"' >>$(1)/etc/board.d/99-lan-ip
+ echo 'board_config_update' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_select network' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_select lan' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_add_string ipaddr $(if $(CONFIG_TARGET_PREINIT_IP),$(CONFIG_TARGET_PREINIT_IP),"192.168.1.1")' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_add_string netmask $(if $(CONFIG_TARGET_PREINIT_NETMASK),$(CONFIG_TARGET_PREINIT_NETMASK),"255.255.255.0")' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_select ..' >>$(1)/etc/board.d/99-lan-ip
+ echo 'json_select ..' >>$(1)/etc/board.d/99-lan-ip
+ echo 'board_config_flush' >>$(1)/etc/board.d/99-lan-ip
+endif
endef
define Build/Prepare
diff --git a/package/base-files/image-config.in b/package/base-files/image-config.in
index ac406bc456..2de2130b84 100644
--- a/package/base-files/image-config.in
+++ b/package/base-files/image-config.in
@@ -5,6 +5,13 @@
# See /LICENSE for more information.
#
+config TARGET_DEFAULT_LAN_IP_FROM_PREINIT
+ bool "Use preinit IP configuration as default LAN IP" if IMAGEOPT
+ default n
+ help
+ Enabling this will set the default LAN IP address and netmask
+ to the preinit values set in the image config.
+
menuconfig PREINITOPT
bool "Preinit configuration options" if IMAGEOPT
default n
--
2.37.4
More information about the openwrt-devel
mailing list