Date: Sun, 02 Aug 2026 19:55:42 +0000 From: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav <des@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Mark Johnston <markj@FreeBSD.org> Subject: git: 21101f52147e - stable/15 - libfetch: Fix handling of connection failures Message-ID: <6a6fa0be.27727.7adbfc0b@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch stable/15 has been updated by des: URL: https://cgit.FreeBSD.org/src/commit/?id=21101f52147ed077350c1d3a489007c02887eb0d commit 21101f52147ed077350c1d3a489007c02887eb0d Author: Mark Johnston <markj@FreeBSD.org> AuthorDate: 2026-07-27 18:58:34 +0000 Commit: Dag-Erling Smørgrav <des@FreeBSD.org> CommitDate: 2026-08-02 19:54:45 +0000 libfetch: Fix handling of connection failures After commit 848f360c8f9a, if one tries to connect to a closed port, fetch reports "Operation now in progress", which is rather confusing. Return a more useful error message, restoring the old behaviour. Fixes: 848f360c8f9a ("libfetch: Apply timeout to connection attempts") Reviewed by: des MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D58481 (cherry picked from commit b02e02958dad2d5ce3675cbc18b9a94635d09e66) --- lib/libfetch/common.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/libfetch/common.c b/lib/libfetch/common.c index dabc8c4b16b3..8ae51d37481b 100644 --- a/lib/libfetch/common.c +++ b/lib/libfetch/common.c @@ -681,6 +681,10 @@ fetch_connect(const char *host, int port, int af, int verbose) delta.tv_usec / 1000; } } + if (pfd.revents & POLLHUP) { + errno = ECONNREFUSED; + break; + } if (pfd.revents == POLLOUT) { /* connection established */ err = 0;home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a6fa0be.27727.7adbfc0b>
