From dcc721a95bef6f0d8e6d8775b8efe33e5aecd562 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Mon, 15 Apr 2024 18:28:20 +0200 Subject: Adding upstream version 8.2402.0. Signed-off-by: Daniel Baumann --- tests/sndrcv_drvr_noexit.sh | 49 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 tests/sndrcv_drvr_noexit.sh (limited to 'tests/sndrcv_drvr_noexit.sh') diff --git a/tests/sndrcv_drvr_noexit.sh b/tests/sndrcv_drvr_noexit.sh new file mode 100755 index 0000000..7458edf --- /dev/null +++ b/tests/sndrcv_drvr_noexit.sh @@ -0,0 +1,49 @@ +#!/bin/bash +# This is test driver for testing two rsyslog instances. It can be +# utilized by any test that just needs two instances with different +# config files, where messages are injected in instance TWO and +# (with whatever rsyslog mechanism) being relayed over to instance ONE, +# where they are written to the log file. After the run, the completeness +# of that log file is checked. +# The code is almost the same, but the config files differ (probably greatly) +# for different test cases. As such, this driver needs to be called with the +# config file name ($2). From that name, the sender and receiver config file +# names are automatically generated. +# So: $1 config file name, $2 number of messages +# environment variable TCPFLOOD_EXTRA_OPTIONS is used to slowdown sending when +# using UDP (we've seen problems due to UDP message loss if sending with full +# speed) +# +# A note on TLS testing: the current testsuite (in git!) already contains +# TLS test cases. However, getting these test cases correct is not simple. +# That's not a problem with the code itself, but rather a problem with +# synchronization in the test environment. So I have decided to keep the +# TLS tests in, but not yet actually utilize them. This is most probably +# left as an exercise for future (devel) releases. -- rgerhards, 2009-11-11 +# +# added 2009-11-11 by Rgerhards +# This file is part of the rsyslog project, released under ASL 2.0 +. ${srcdir:=.}/diag.sh init +# uncomment for debugging support: +#export RSYSLOG_DEBUG="debug nostdout noprintmutexaction" + +# start up the instances +export RSYSLOG_DEBUGLOG="log" +startup $1_rcvr.conf +export RSYSLOG_DEBUGLOG="log2" +#valgrind="valgrind" +startup $1_sender.conf 2 + +# now inject the messages into instance 2. It will connect to instance 1, +# and that instance will record the data. +tcpflood -m$2 -i1 +sleep 5 # make sure all data is received in input buffers +# shut down sender when everything is sent, receiver continues to run concurrently +shutdown_when_empty 2 +wait_shutdown 2 +# now it is time to stop the receiver as well +shutdown_when_empty +wait_shutdown + +# do the final check +seq_check 1 $2 $3 -- cgit v1.2.3