From: tb Date: Sun, 18 Dec 2022 12:53:18 +0000 (+0000) Subject: nc: skip connection info on failed or skipped udptest() X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=7be8fdb64b91c08924aada5a4a1a94b957e1b0d2;p=openbsd 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 --- diff --git a/usr.bin/nc/netcat.c b/usr.bin/nc/netcat.c index dc60158749b..3ee1670053d 100644 --- a/usr.bin/nc/netcat.c +++ b/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);