From patchwork Tue May 23 17:23:13 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jonatan Schlag X-Patchwork-Id: 6912 Return-Path: Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4QQh4j2fqzz3wls for ; Tue, 23 May 2023 17:24:05 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail02.haj.ipfire.org", Issuer "R3" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4QQh4h17VNz9Tr; Tue, 23 May 2023 17:24:04 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4QQh4h017Hz30Kv; Tue, 23 May 2023 17:24:04 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4QQh4f06SZz2yTC for ; Tue, 23 May 2023 17:24:02 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4QQh4d4r7Cz67K; Tue, 23 May 2023 17:24:01 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1684862641; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=5g0cFHZUVRtAAOJAjekeaHliuv981yXzbbINaXItEE4=; b=oV4cRpKI37qESkKEG3+lM3WEkYcmlG1z7sMa9lTSi9/ShvwEI6TG4+l8TNMhQYOnypKSIX 5pW5zNrMfZQhTmAw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1684862641; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=5g0cFHZUVRtAAOJAjekeaHliuv981yXzbbINaXItEE4=; b=VKjiIswneF0XadVK9zFovSjY5ULxTKI/CPRZLL4Om543RmaQkNJyjNHFiHHJEZTLeHZQIY cVxtr7Ndus5+tHzM6nG5RqdqwkBjFpipdFEryUqzrDGuZ1AnvBhVnwLZDZQhWAVPYh3acI XnkEReod3p+ipYVeMjoaYWyIVBUtTL/NakTlhb9n0AauIGxuj0TWFDtcGJfLamzhWdId3q kavKvswlK6zBuEhhp7RWOkwxfoUtEhqeb2HsQabocZp5F/iv1ns4CNZke3s7edK5iC2DeU XSOL6cYf7NlbmCPiTLuCIZNQqI9iAB5Lm8adLKiURaL5LX6blJVQIbUrxck+3A== From: Jonatan Schlag To: development@lists.ipfire.org Subject: [Patch RFC 13/15] network startup: Add scripts for local and uplink Date: Tue, 23 May 2023 19:23:13 +0200 Message-Id: <20230523172314.7826-14-jonatan.schlag@ipfire.org> In-Reply-To: <20230523172314.7826-1-jonatan.schlag@ipfire.org> References: <20230523172314.7826-1-jonatan.schlag@ipfire.org> MIME-Version: 1.0 X-BeenThere: development@lists.ipfire.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: IPFire development talk List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: development-bounces@lists.ipfire.org Sender: "Development" This allows us to start the local and uplink network independent of each other. The function of /etc/init.d/network remains unchangend to maintain backwards compatibility. Signed-off-by: Jonatan Schlag --- config/rootfiles/common/aarch64/initscripts | 2 ++ config/rootfiles/common/riscv64/initscripts | 2 ++ config/rootfiles/common/x86_64/initscripts | 2 ++ lfs/initscripts | 3 +++ src/initscripts/system/network | 22 ++++++++++++--------- 5 files changed, 22 insertions(+), 9 deletions(-) diff --git a/config/rootfiles/common/aarch64/initscripts b/config/rootfiles/common/aarch64/initscripts index 506f616e6..739503ae6 100644 --- a/config/rootfiles/common/aarch64/initscripts +++ b/config/rootfiles/common/aarch64/initscripts @@ -36,6 +36,8 @@ etc/rc.d/init.d/mountfs etc/rc.d/init.d/mountkernfs etc/rc.d/init.d/mounttmpfs etc/rc.d/init.d/network +etc/rc.d/init.d/network-local +etc/rc.d/init.d/network-uplink #etc/rc.d/init.d/networking etc/rc.d/init.d/networking/any etc/rc.d/init.d/networking/blue diff --git a/config/rootfiles/common/riscv64/initscripts b/config/rootfiles/common/riscv64/initscripts index e834cbfc3..ed1eae904 100644 --- a/config/rootfiles/common/riscv64/initscripts +++ b/config/rootfiles/common/riscv64/initscripts @@ -36,6 +36,8 @@ etc/rc.d/init.d/mountfs etc/rc.d/init.d/mountkernfs etc/rc.d/init.d/mounttmpfs etc/rc.d/init.d/network +etc/rc.d/init.d/network-local +etc/rc.d/init.d/network-uplink #etc/rc.d/init.d/networking etc/rc.d/init.d/networking/any etc/rc.d/init.d/networking/blue diff --git a/config/rootfiles/common/x86_64/initscripts b/config/rootfiles/common/x86_64/initscripts index e834cbfc3..ed1eae904 100644 --- a/config/rootfiles/common/x86_64/initscripts +++ b/config/rootfiles/common/x86_64/initscripts @@ -36,6 +36,8 @@ etc/rc.d/init.d/mountfs etc/rc.d/init.d/mountkernfs etc/rc.d/init.d/mounttmpfs etc/rc.d/init.d/network +etc/rc.d/init.d/network-local +etc/rc.d/init.d/network-uplink #etc/rc.d/init.d/networking etc/rc.d/init.d/networking/any etc/rc.d/init.d/networking/blue diff --git a/lfs/initscripts b/lfs/initscripts index 263292da9..e8a2e4c6e 100644 --- a/lfs/initscripts +++ b/lfs/initscripts @@ -193,6 +193,9 @@ $(TARGET) : ln -sf any /etc/rc.d/init.d/networking/$$i; \ done + ln -sf /etc/rc.d/init.d/network /etc/rc.d/init.d/network-local + ln -sf /etc/rc.d/init.d/networking/red /etc/rc.d/init.d/network-uplink + # intel intel no swconfig ifeq "$(BUILD_PLATFORM)" "arm" ln -sf ../init.d/swconfig /etc/rc.d/rcsysinit.d/S73swconfig diff --git a/src/initscripts/system/network b/src/initscripts/system/network index e3fe47597..ff305e472 100644 --- a/src/initscripts/system/network +++ b/src/initscripts/system/network @@ -36,20 +36,24 @@ declare -a VALID_ZONES VALID_ZONES+=("blue") VALID_ZONES+=("green") VALID_ZONES+=("orange") -VALID_ZONES+=("red") + +# If we are called as /etc/init.d/network also red is a valid zone. +# Otherwise we are called as /etc/init.d/network-local where red +# is invalid. +if [[ "$(basename $0)" == "network" ]]; then + VALID_ZONES+=("red") +fi declare -A ZONE_ACTION -ZONE_ACTION[blue]=false -ZONE_ACTION[green]=false -ZONE_ACTION[orange]=false -ZONE_ACTION[red]=false +for i in "${VALID_ZONES[@]}"; do + ZONE_ACTION[${i}]=false +done if [ $# -eq 0 ]; then - ZONE_ACTION[blue]=true - ZONE_ACTION[green]=true - ZONE_ACTION[orange]=true - ZONE_ACTION[red]=true + for i in "${VALID_ZONES[@]}"; do + ZONE_ACTION[${i}]=true + done fi while [ $# -ne 0 ]; do