From 9120cbac04bd757c024a3d0a0cfbaf9ce8e79e96 Mon Sep 17 00:00:00 2001 From: tb <> Date: Sun, 18 Dec 2022 12:53:18 +0000 Subject: nc: skip connection info on failed or skipped udptest() In udp mode, nc would always print that the connected succeeded independently of whether that was actually the case. Don't do that. idea/ok mpf --- src/usr.bin/nc/netcat.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/usr.bin/nc/netcat.c b/src/usr.bin/nc/netcat.c index dc60158749..3ee1670053 100644 --- a/src/usr.bin/nc/netcat.c +++ b/src/usr.bin/nc/netcat.c @@ -1,4 +1,4 @@ -/* $OpenBSD: netcat.c,v 1.223 2022/12/18 12:51:10 tb Exp $ */ +/* $OpenBSD: netcat.c,v 1.224 2022/12/18 12:53:18 tb Exp $ */ /* * Copyright (c) 2001 Eric Jackson * Copyright (c) 2015 Bob Beck. All rights reserved. @@ -700,16 +700,19 @@ main(int argc, char *argv[]) ret = 0; if (vflag || zflag) { + int print_info = 1; + /* For UDP, make sure we are connected. */ if (uflag) { - if (udptest(s) == -1) { + /* No info on failed or skipped test. */ + if ((print_info = udptest(s)) == -1) { ret = 1; continue; } } - - connection_info(host, portlist[i], - uflag ? "udp" : "tcp", ipaddr); + if (print_info == 1) + connection_info(host, portlist[i], + uflag ? "udp" : "tcp", ipaddr); } if (Fflag) fdpass(s); -- cgit v1.2.3-55-g6feb