]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: add test cases for sysctl reading configuration from stdin or positional arguments 39219/head
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 5 Oct 2025 18:21:05 +0000 (03:21 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 5 Oct 2025 19:55:25 +0000 (04:55 +0900)
test/units/TEST-87-AUX-UTILS-VM.sysctl.sh

index 3bf1317327a4b944cdcc6b6786011fe2c33b7c1b..f84621431c9f207bc0010b5076f6bbaea76c82a4 100755 (executable)
@@ -16,6 +16,25 @@ echo "-foo.foo=42" >/tmp/foo.conf
 assert_rc 0 /usr/lib/systemd/systemd-sysctl /tmp/foo.conf
 assert_rc 0 /usr/lib/systemd/systemd-sysctl --strict /tmp/foo.conf
 
+assert_rc 0 /usr/lib/systemd/systemd-sysctl --inline "foo.bar=42"
+assert_rc 1 /usr/lib/systemd/systemd-sysctl --inline --strict "foo.bar=42"
+assert_rc 0 /usr/lib/systemd/systemd-sysctl --inline -- "-foo.bar=42"
+assert_rc 0 /usr/lib/systemd/systemd-sysctl --inline --strict -- "-foo.bar=42"
+
+/usr/lib/systemd/systemd-sysctl - <<EOF
+foo.bar=42
+EOF
+(! /usr/lib/systemd/systemd-sysctl --strict - <<EOF
+foo.bar=42
+EOF
+)
+/usr/lib/systemd/systemd-sysctl - <<EOF
+-foo.bar=42
+EOF
+/usr/lib/systemd/systemd-sysctl --strict - <<EOF
+-foo.bar=42
+EOF
+
 ip link add hoge type dummy
 trap 'ip link del hoge' EXIT
 udevadm wait --timeout=30 /sys/class/net/hoge
@@ -34,3 +53,28 @@ assert_rc 0 /usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/hoge /tmp/fo
 assert_eq "$(cat /proc/sys/net/ipv4/conf/hoge/drop_gratuitous_arp)" "1"
 assert_eq "$(cat /proc/sys/net/ipv4/conf/hoge/bootp_relay)" "1"
 assert_eq "$(cat /proc/sys/net/ipv4/conf/hoge/disable_policy)" "0"
+
+echo 0 >/proc/sys/net/ipv4/conf/hoge/drop_gratuitous_arp
+echo 0 >/proc/sys/net/ipv4/conf/hoge/bootp_relay
+echo 0 >/proc/sys/net/ipv4/conf/hoge/disable_policy
+
+assert_rc 0 /usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/hoge --inline \
+          'net.ipv4.conf.*.drop_gratuitous_arp=1' \
+          'net.ipv4.*.*.bootp_relay=1' \
+          'net.ipv4.aaa.*.disable_policy=1'
+assert_eq "$(cat /proc/sys/net/ipv4/conf/hoge/drop_gratuitous_arp)" "1"
+assert_eq "$(cat /proc/sys/net/ipv4/conf/hoge/bootp_relay)" "1"
+assert_eq "$(cat /proc/sys/net/ipv4/conf/hoge/disable_policy)" "0"
+
+echo 0 >/proc/sys/net/ipv4/conf/hoge/drop_gratuitous_arp
+echo 0 >/proc/sys/net/ipv4/conf/hoge/bootp_relay
+echo 0 >/proc/sys/net/ipv4/conf/hoge/disable_policy
+
+/usr/lib/systemd/systemd-sysctl --prefix=/net/ipv4/conf/hoge - <<EOF
+net.ipv4.conf.*.drop_gratuitous_arp=1
+net.ipv4.*.*.bootp_relay=1
+net.ipv4.aaa.*.disable_policy=1
+EOF
+assert_eq "$(cat /proc/sys/net/ipv4/conf/hoge/drop_gratuitous_arp)" "1"
+assert_eq "$(cat /proc/sys/net/ipv4/conf/hoge/bootp_relay)" "1"
+assert_eq "$(cat /proc/sys/net/ipv4/conf/hoge/disable_policy)" "0"