rsyslog/tests/mmanon_simple_8_ipv4.sh
Aditi Prakash a3e73cb8c3 [Modernization] Replace Internal Backticks with Shell Expansion
Modernize the  manon / mmnormalize test suite to remove legacy backtick-based
expansion and align with current shell best practices. This
reduces overhead and improves maintainability, especially in
CI and containerized environments.

Impact: test behavior may change in edge quoting cases.

BEFORE: tests used `echo $VAR` via backticks, spawning shells.
AFTER: tests use direct '$VAR' expansion without subshells.

The update replaces command substitution patterns used to
populate file paths and parameters with direct variable
expansion. This avoids per-expansion process forks and keeps
evaluation within the shell, improving performance and
readability.

Care is taken to preserve quoting semantics where variables
are passed to rsyslog configs. No rsyslog runtime behavior is
changed; only test execution mechanics are affected.

Refs: https://github.com/rsyslog/rsyslog/issues/6523
2026-04-06 23:16:41 -07:00

32 lines
869 B
Bash
Executable File

#!/bin/bash
# add 2016-11-22 by Jan Gerhards, released under ASL 2.0
. ${srcdir:=.}/diag.sh init
generate_conf
add_conf '
template(name="outfmt" type="string" string="%msg%\n")
module(load="../plugins/mmanon/.libs/mmanon")
module(load="../plugins/imtcp/.libs/imtcp")
input(type="imtcp" port="0" listenPortFileName="'$RSYSLOG_DYNNAME'.tcpflood_port" ruleset="testing")
ruleset(name="testing") {
action(type="mmanon" ipv4.bits="8" ipv4.mode="simple")
action(type="omfile" file="'$RSYSLOG_OUT_LOG'" template="outfmt")
}'
startup
tcpflood -m1 -M "\"<129>Mar 10 01:00:00 172.20.245.8 tag: 1.1.1.8
<129>Mar 10 01:00:00 172.20.245.8 tag: 0.0.0.0
<129>Mar 10 01:00:00 172.20.245.8 tag: 172.0.234.255
<129>Mar 10 01:00:00 172.20.245.8 tag: 111.1.1.8.\""
shutdown_when_empty
wait_shutdown
export EXPECTED=' 1.1.1.x
0.0.0.x
172.0.234.xxx
111.1.1.x.'
cmp_exact
exit_test