Skip to content

Commit 3afb094

Browse files
committed
There is, of course, more than one type of netcat.
1 parent 10a1c24 commit 3afb094

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

src/psij/executors/batch/common/batch_lib.mustache

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,28 @@ _UPDATE_MODE="none"
33
update_status() {
44
STATUS="$1"
55
if [ "$_UPDATE_MODE" == "none" ]; then
6-
if which nc >/dev/null; then
7-
_UPDATE_MODE="nc"
6+
NCPROBE=`nc -h 2>&1`
7+
EC=$?
8+
if [ "$EC" == "0" ]; then
9+
if echo $NCPROBE | grep "send-only" >/dev/null 2>&1 ; then
10+
_UPDATE_MODE="nc1"
11+
else
12+
_UPDATE_MODE="nc2"
13+
fi
814
else
915
_UPDATE_MODE="file"
1016
fi
1117
fi
1218
13-
if [ "$_UPDATE_MODE" == "nc" ]; then
19+
if [ "$_UPDATE_MODE" == "nc1" ]; then
1420
ADDRS={{psij.us_addrs}}
1521
for ADDR in ${ADDRS//,/ }; do
16-
echo "{{job.id}} $STATUS" | nc -4 -u $ADDR {{psij.us_port}}
22+
echo "{{job.id}} $STATUS" | nc --send-only -4 -u $ADDR {{psij.us_port}}
23+
done
24+
elif [ "$_UPDATE_MODE" == "nc2" ]; then
25+
ADDRS={{psij.us_addrs}}
26+
for ADDR in ${ADDRS//,/ }; do
27+
echo "{{job.id}} $STATUS" | nc -w0 -q0 -4 -u $ADDR {{psij.us_port}}
1728
done
1829
else
1930
echo "{{job.id}} $STATUS" >> {{psij.us_file}}

0 commit comments

Comments
 (0)