[3/5] network initscript: Use network_zone_exists

Message ID 20240302110928.10377-3-jonatan.schlag@ipfire.org
State New
Headers
Series [1/5] functions.network: Add proper Exit Codes |

Commit Message

Jonatan Schlag March 2, 2024, 11:09 a.m. UTC
  This only a cosmetic change but should making the code easier changeable
later on.

Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
---
 src/initscripts/system/network | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
  

Comments

Michael Tremer March 11, 2024, 5:02 p.m. UTC | #1
Hello,

Can we no rewrite this entire script? Even after your fix, I am very unhappy with it.

-Michael

> On 2 Mar 2024, at 11:09, Jonatan Schlag <jonatan.schlag@ipfire.org> wrote:
> 
> This only a cosmetic change but should making the code easier changeable
> later on.
> 
> Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
> ---
> src/initscripts/system/network | 12 +++++++-----
> 1 file changed, 7 insertions(+), 5 deletions(-)
> 
> diff --git a/src/initscripts/system/network b/src/initscripts/system/network
> index 0dcce060f..f334561de 100644
> --- a/src/initscripts/system/network
> +++ b/src/initscripts/system/network
> @@ -21,6 +21,8 @@
> 
> . /etc/sysconfig/rc
> . ${rc_functions}
> +. /etc/init.d/networking/functions.network
> +
> eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
> 
> DO="${1}"
> @@ -54,11 +56,11 @@ case "${DO}" in
> [ "$green" == "1" ] && /etc/rc.d/init.d/networking/green start
> 
> # BLUE
> - [ "$blue" == "1" ] && [ "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" ] && \
> + [ "$blue" == "1" ] && network_zone_exists "blue" && \
> /etc/rc.d/init.d/networking/blue start
> 
> # ORANGE
> - [ "$orange" == "1" ] && [ "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = "4" ] && \
> + [ "$orange" == "1" ] && network_zone_exists "orange" && \
> /etc/rc.d/init.d/networking/orange start
> 
> # RED
> @@ -84,16 +86,16 @@ case "${DO}" in
> [ "$green" == "1" ] && /etc/rc.d/init.d/networking/green stop
> 
> # BLUE
> - [ "$blue" == "1" ] && [ "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" ] && \
> + [ "$blue" == "1" ] && network_zone_exists "blue" && \
> /etc/rc.d/init.d/networking/blue stop
> 
> # ORANGE
> - [ "$orange" == "1" ] && [ "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = "4" ] && \
> + [ "$orange" == "1" ] && network_zone_exists "orange" && \
> /etc/rc.d/init.d/networking/orange stop
> 
> # RED
> if [ "$red" == "1" ]; then
> - if [ "$CONFIG_TYPE" = "1" -o "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" ]; then
> + if network_zone_exists "red"; then
> /etc/rc.d/init.d/networking/red stop
> fi
> fi
> -- 
> 2.39.2
>
  
Jonatan Schlag March 16, 2024, 9:46 a.m. UTC | #2
Hi,

This will happen. But you do not seem to want too many patches at once, 
so I started to gradually improve it, to avoid a full rewrite. I 
currently have some trouble getting your point, how big a patch series 
or the changes should be. Because both ways, full rewrite and gradually 
improving it seem to be wrong.

Jonatan


Am 2024-03-11 18:02, schrieb Michael Tremer:
> Hello,
> 
> Can we no rewrite this entire script? Even after your fix, I am very 
> unhappy with it.
> 
> -Michael
> 
>> On 2 Mar 2024, at 11:09, Jonatan Schlag <jonatan.schlag@ipfire.org> 
>> wrote:
>> 
>> This only a cosmetic change but should making the code easier 
>> changeable
>> later on.
>> 
>> Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
>> ---
>> src/initscripts/system/network | 12 +++++++-----
>> 1 file changed, 7 insertions(+), 5 deletions(-)
>> 
>> diff --git a/src/initscripts/system/network 
>> b/src/initscripts/system/network
>> index 0dcce060f..f334561de 100644
>> --- a/src/initscripts/system/network
>> +++ b/src/initscripts/system/network
>> @@ -21,6 +21,8 @@
>> 
>> . /etc/sysconfig/rc
>> . ${rc_functions}
>> +. /etc/init.d/networking/functions.network
>> +
>> eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
>> 
>> DO="${1}"
>> @@ -54,11 +56,11 @@ case "${DO}" in
>> [ "$green" == "1" ] && /etc/rc.d/init.d/networking/green start
>> 
>> # BLUE
>> - [ "$blue" == "1" ] && [ "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" 
>> ] && \
>> + [ "$blue" == "1" ] && network_zone_exists "blue" && \
>> /etc/rc.d/init.d/networking/blue start
>> 
>> # ORANGE
>> - [ "$orange" == "1" ] && [ "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = 
>> "4" ] && \
>> + [ "$orange" == "1" ] && network_zone_exists "orange" && \
>> /etc/rc.d/init.d/networking/orange start
>> 
>> # RED
>> @@ -84,16 +86,16 @@ case "${DO}" in
>> [ "$green" == "1" ] && /etc/rc.d/init.d/networking/green stop
>> 
>> # BLUE
>> - [ "$blue" == "1" ] && [ "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" 
>> ] && \
>> + [ "$blue" == "1" ] && network_zone_exists "blue" && \
>> /etc/rc.d/init.d/networking/blue stop
>> 
>> # ORANGE
>> - [ "$orange" == "1" ] && [ "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = 
>> "4" ] && \
>> + [ "$orange" == "1" ] && network_zone_exists "orange" && \
>> /etc/rc.d/init.d/networking/orange stop
>> 
>> # RED
>> if [ "$red" == "1" ]; then
>> - if [ "$CONFIG_TYPE" = "1" -o "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" 
>> = "3" -o "$CONFIG_TYPE" = "4" ]; then
>> + if network_zone_exists "red"; then
>> /etc/rc.d/init.d/networking/red stop
>> fi
>> fi
>> --
>> 2.39.2
>>
  
Michael Tremer March 16, 2024, 11:25 a.m. UTC | #3
Okay, keep them coming then :)

> On 16 Mar 2024, at 09:46, Jonatan Schlag <jonatan.schlag@ipfire.org> wrote:
> 
> 
> Hi,
> 
> This will happen. But you do not seem to want too many patches at once, so I started to gradually improve it, to avoid a full rewrite. I currently have some trouble getting your point, how big a patch series or the changes should be. Because both ways, full rewrite and gradually improving it seem to be wrong.
> 
> Jonatan
> 
> 
> Am 2024-03-11 18:02, schrieb Michael Tremer:
>> Hello,
>> Can we no rewrite this entire script? Even after your fix, I am very unhappy with it.
>> -Michael
>>> On 2 Mar 2024, at 11:09, Jonatan Schlag <jonatan.schlag@ipfire.org> wrote:
>>> This only a cosmetic change but should making the code easier changeable
>>> later on.
>>> Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
>>> ---
>>> src/initscripts/system/network | 12 +++++++-----
>>> 1 file changed, 7 insertions(+), 5 deletions(-)
>>> diff --git a/src/initscripts/system/network b/src/initscripts/system/network
>>> index 0dcce060f..f334561de 100644
>>> --- a/src/initscripts/system/network
>>> +++ b/src/initscripts/system/network
>>> @@ -21,6 +21,8 @@
>>> . /etc/sysconfig/rc
>>> . ${rc_functions}
>>> +. /etc/init.d/networking/functions.network
>>> +
>>> eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
>>> DO="${1}"
>>> @@ -54,11 +56,11 @@ case "${DO}" in
>>> [ "$green" == "1" ] && /etc/rc.d/init.d/networking/green start
>>> # BLUE
>>> - [ "$blue" == "1" ] && [ "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" ] && \
>>> + [ "$blue" == "1" ] && network_zone_exists "blue" && \
>>> /etc/rc.d/init.d/networking/blue start
>>> # ORANGE
>>> - [ "$orange" == "1" ] && [ "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = "4" ] && \
>>> + [ "$orange" == "1" ] && network_zone_exists "orange" && \
>>> /etc/rc.d/init.d/networking/orange start
>>> # RED
>>> @@ -84,16 +86,16 @@ case "${DO}" in
>>> [ "$green" == "1" ] && /etc/rc.d/init.d/networking/green stop
>>> # BLUE
>>> - [ "$blue" == "1" ] && [ "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" ] && \
>>> + [ "$blue" == "1" ] && network_zone_exists "blue" && \
>>> /etc/rc.d/init.d/networking/blue stop
>>> # ORANGE
>>> - [ "$orange" == "1" ] && [ "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = "4" ] && \
>>> + [ "$orange" == "1" ] && network_zone_exists "orange" && \
>>> /etc/rc.d/init.d/networking/orange stop
>>> # RED
>>> if [ "$red" == "1" ]; then
>>> - if [ "$CONFIG_TYPE" = "1" -o "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" ]; then
>>> + if network_zone_exists "red"; then
>>> /etc/rc.d/init.d/networking/red stop
>>> fi
>>> fi
>>> --
>>> 2.39.2
  

Patch

diff --git a/src/initscripts/system/network b/src/initscripts/system/network
index 0dcce060f..f334561de 100644
--- a/src/initscripts/system/network
+++ b/src/initscripts/system/network
@@ -21,6 +21,8 @@ 
 
 . /etc/sysconfig/rc
 . ${rc_functions}
+. /etc/init.d/networking/functions.network
+
 eval $(/usr/local/bin/readhash /var/ipfire/ethernet/settings)
 
 DO="${1}"
@@ -54,11 +56,11 @@  case "${DO}" in
 		[ "$green" == "1" ] && /etc/rc.d/init.d/networking/green start
 
 		# BLUE
-		[ "$blue" == "1" ] && [ "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" ] && \
+		[ "$blue" == "1" ] && network_zone_exists "blue" && \
 			/etc/rc.d/init.d/networking/blue start
 
 		# ORANGE
-		[ "$orange" == "1" ] && [ "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = "4" ] && \
+		[ "$orange" == "1" ] && network_zone_exists "orange" && \
 			/etc/rc.d/init.d/networking/orange start
 
 		# RED
@@ -84,16 +86,16 @@  case "${DO}" in
 		[ "$green" == "1" ] && /etc/rc.d/init.d/networking/green stop
 
 		# BLUE
-		[ "$blue" == "1" ] && [ "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" ] && \
+		[ "$blue" == "1" ] && network_zone_exists "blue" && \
 			/etc/rc.d/init.d/networking/blue stop
 
 		# ORANGE
-		[ "$orange" == "1" ] && [ "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = "4" ] && \
+		[ "$orange" == "1" ] && network_zone_exists "orange" && \
 			/etc/rc.d/init.d/networking/orange stop
 
 		# RED
 		if [ "$red" == "1" ]; then
-			if [ "$CONFIG_TYPE" = "1" -o "$CONFIG_TYPE" = "2" -o "$CONFIG_TYPE" = "3" -o "$CONFIG_TYPE" = "4" ]; then
+			if network_zone_exists "red"; then
 				/etc/rc.d/init.d/networking/red stop
 			fi
 		fi