Now the tcp_server handles well the situation where there isn't a log file.
#!/bin/bash
TEST_NPIPE=prova_npipe
TEST_UNIX=prova_unix
TEST_UDP=4000
rm -f $TEST_NPIPE
mkfifo $TEST_NPIPE
rm -f $TEST_UNIX
# backup the config file
cp syslog.conf syslog.conf~
cat >syslog.conf << EOF
from_unix=$TEST_UNIX
from_udp=$TEST_UDP
from_npipe=$TEST_NPIPE
to_udp_host=disabled
EOF
./syslog_kernel &
for a in 1 2 ; do
echo provant IPv4...
echo Enviant per udp IPv4 -$a- >/dev/udp/localhost/$TEST_UDP
sleep 1
echo provant IPv6...
echo Enviant per udp IPv6 -$a- >/dev/udp/::1/$TEST_UDP
sleep 1
echo provant npipe...
echo Enviant per named pipe -$a- > $TEST_NPIPE
sleep 1
echo provant unix socket...
echo Enviant per unix socket -$a- | ./unix_writer $TEST_UNIX
sleep 1
done
echo close >/dev/udp/localhost/$TEST_UDP
sleep 1
echo close > $TEST_NPIPE
sleep 1
echo close | ./unix_writer $TEST_UNIX
wait
rm -f $TEST_NPIPE
rm -f $TEST_UNIX
mv syslog.conf~ syslog.conf