From: Jonatan Schlag <jonatan.schlag@ipfire.org>
To: development@lists.ipfire.org
Subject: [PATCH 18/21] initscripts fkt: readhash should only parse lines with a =
Date: Mon, 20 May 2024 11:06:08 +0200 [thread overview]
Message-ID: <20240520090611.10406-19-jonatan.schlag@ipfire.org> (raw)
In-Reply-To: <20240520090611.10406-1-jonatan.schlag@ipfire.org>
[-- Attachment #1: Type: text/plain, Size: 1789 bytes --]
A line without a = is clearly invalid.
Signed-off-by: Jonatan Schlag <jonatan.schlag(a)ipfire.org>
---
src/initscripts/system/functions | 6 ++++++
tests/src/initscripts/system/functions/data/2 | 1 +
tests/src/initscripts/system/functions/data/2_output_stderr | 1 +
3 files changed, 8 insertions(+)
diff --git a/src/initscripts/system/functions b/src/initscripts/system/functions
index bbcfab95d..38a1316a8 100644
--- a/src/initscripts/system/functions
+++ b/src/initscripts/system/functions
@@ -911,6 +911,12 @@ readhash() {
continue
fi
+ # Skip lines without a =
+ if ! [[ ${line} =~ [^=]*=[^=]*$ ]]; then
+ echo "Invalid line '${line}'" >&2
+ continue
+ fi
+
local key="${line%=*}"
local val="${line#*=}"
diff --git a/tests/src/initscripts/system/functions/data/2 b/tests/src/initscripts/system/functions/data/2
index 3e1a7028b..d1c4d327d 100644
--- a/tests/src/initscripts/system/functions/data/2
+++ b/tests/src/initscripts/system/functions/data/2
@@ -15,6 +15,7 @@ RED_ADDRESS=0.0.0.0
RED_NETMASK=0.0.0.0
RED_TYPE=PPPOE
RED_NETADDRESS=0.0.0.0
+Line_without_a_equal_sign_is_also_invalid
# Comment for testing
# Comment for testing Comments with spaces before
diff --git a/tests/src/initscripts/system/functions/data/2_output_stderr b/tests/src/initscripts/system/functions/data/2_output_stderr
index dfcf2154b..cccd19af6 100644
--- a/tests/src/initscripts/system/functions/data/2_output_stderr
+++ b/tests/src/initscripts/system/functions/data/2_output_stderr
@@ -2,3 +2,4 @@ Invalid key '-RED_DEV'
Invalid key 'RE??D_MACADDR'
Invalid key 'RED&&_DRIVER'
Invalid key '0BLUE_DEV'
+Invalid line 'Line_without_a_equal_sign_is_also_invalid'
--
2.39.2
next prev parent reply other threads:[~2024-05-20 9:06 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-20 9:05 First patch series for the roadmap item "Get rid of CONFIG_TYPE in the network config" Jonatan Schlag
2024-05-20 9:05 ` [PATCH 01/21] test: Add bash lib for colors Jonatan Schlag
2024-05-20 9:05 ` [PATCH 02/21] tests: Add bash lib Jonatan Schlag
2024-05-20 9:05 ` [PATCH 03/21] tests/lib.sh: Add function test_that_key_in_arry_has_value Jonatan Schlag
2024-05-20 9:05 ` [PATCH 04/21] tests/lib.sh: Add check if variable exists to test_that_key_in_arry_has_value Jonatan Schlag
2024-05-20 9:05 ` [PATCH 05/21] tests/lib.sh: Add logging functions Jonatan Schlag
2024-05-20 9:05 ` [PATCH 06/21] tests/lib.sh: adjust to pytest logging style Jonatan Schlag
2024-05-20 9:05 ` [PATCH 07/21] tests/lib.sh: Fix check if array is defined Jonatan Schlag
2024-05-20 9:05 ` [PATCH 08/21] test_that_key_in_arry_has_value: Check if the key " Jonatan Schlag
2024-05-20 9:05 ` [PATCH 09/21] tests/lib.sh: Use namref to access an array Jonatan Schlag
2024-05-20 9:06 ` [PATCH 10/21] test_that_key_in_arry_has_value: Check if a key in an array exists Jonatan Schlag
2024-05-20 9:06 ` [PATCH 11/21] tests: Add function to test the ouput of a bash function Jonatan Schlag
2024-05-20 9:06 ` [PATCH 12/21] initscript functions: add readhash Jonatan Schlag
2024-05-20 9:06 ` [PATCH 13/21] initscript fkt: ignore blank lines in readhash Jonatan Schlag
2024-05-20 9:06 ` [PATCH 14/21] test: Add functions test_that_array_is_defined Jonatan Schlag
2024-05-20 9:06 ` [PATCH 15/21] tests: Add functions test_that_array_doesnt_have_key Jonatan Schlag
2024-05-20 9:06 ` [PATCH 16/21] initscripts fkt: Ignore comments in readhash Jonatan Schlag
2024-05-20 9:06 ` [PATCH 17/21] initscripts fkt: ignore invalid keys " Jonatan Schlag
2024-05-20 9:06 ` Jonatan Schlag [this message]
2024-05-20 9:06 ` [PATCH 19/21] initscripts fkt: Check for invalid values " Jonatan Schlag
2024-05-20 9:06 ` [PATCH 20/21] initscripts fkt: keep readhash compatible with older implementation Jonatan Schlag
2024-05-20 9:06 ` [PATCH 21/21] initscripts fkt: Fix shebang Jonatan Schlag
[not found] <9D30D788-812C-4393-A46C-25AE799556FE@ipfire.org>
2024-06-02 18:09 ` [PATCH 18/21] initscripts fkt: readhash should only parse lines with a = Jonatan Schlag
2024-06-03 9:25 ` Michael Tremer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240520090611.10406-19-jonatan.schlag@ipfire.org \
--to=jonatan.schlag@ipfire.org \
--cc=development@lists.ipfire.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox