summaryrefslogtreecommitdiffstats
path: root/tests/rs_optimizer_pri.sh
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rs_optimizer_pri.sh')
-rwxr-xr-xtests/rs_optimizer_pri.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/rs_optimizer_pri.sh b/tests/rs_optimizer_pri.sh
new file mode 100755
index 0000000..178e4e8
--- /dev/null
+++ b/tests/rs_optimizer_pri.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+# Test for the RainerScript optimizer, folding of
+# syslogfacility/priority-text to prifilt. Unfortunately, we cannot yet
+# automatically detect if the optimizer does not correctly fold, but we
+# can at least detect if it segfaults or otherwise creates incorrect code.
+# This file is part of the rsyslog project, released under ASL 2.0
+# rgerhards, 2013-11-20
+echo ===============================================================================
+echo \[rs_optimizer_pri.sh\]: testing RainerScript PRI optimizer
+. ${srcdir:=.}/diag.sh init
+generate_conf
+add_conf '
+template(name="outfmt" type="string" string="%msg:F,58:2%\n")
+
+module(load="../plugins/imtcp/.libs/imtcp")
+input(type="imtcp" port="0" listenPortFileName="'$RSYSLOG_DYNNAME'.tcpflood_port")
+
+if $syslogfacility-text == "local4" then
+ action(type="omfile" template="outfmt" file=`echo $RSYSLOG_OUT_LOG`)
+'
+startup
+sleep 1
+tcpflood -m100 # correct facility
+tcpflood -m100 -P175 # incorrect facility --> must be ignored
+shutdown_when_empty # shut down rsyslogd when done processing messages
+wait_shutdown
+seq_check 0 99
+exit_test