diff options
Diffstat (limited to 'tests/udpserver_reflect.sh')
-rwxr-xr-x | tests/udpserver_reflect.sh | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/udpserver_reflect.sh b/tests/udpserver_reflect.sh new file mode 100755 index 0000000..718049f --- /dev/null +++ b/tests/udpserver_reflect.sh @@ -0,0 +1,29 @@ +#!/bin/sh + + +PIPEFILE="pipe.$$" + +control_c() +# run if user hits control-c +{ + echo -en "\n*** Ouch! Exiting ***\n" + rm -f ${PIPEFILE} + exit $? +} + +P=$1 +PORT=$((P)) +if [ ${PORT} -lt 1 ]; then + echo "usage: $0 <port>" 1>&2 + exit 1 +fi + +echo "register Ctrl-C" +trap control_c SIGINT + +echo "make pipe" +mknod ${PIPEFILE} p +echo "start server" +cat ${PIPEFILE} | nc -w 10 -u -l -p ${PORT} > ${PIPEFILE} +echo "server quit" +rm ${PIPEFILE} |