From nobody Thu Feb 12 21:24:56 2026 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4fBpGx2h27z6Rg4G for ; Thu, 12 Feb 2026 21:24:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fBpGw6zNHz3lmp for ; Thu, 12 Feb 2026 21:24:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770931497; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vmypvPfJiuS1yW04246ByHsn95ck7jISw0sBcD2WUWQ=; b=fPnwzP8vfXnH2BHHmm+yCU4xLyS4z0dTubu/JUcsK45DjuVYa55fUJGYfR8RVWHIJTfGpZ G+btF1L2QQx67cXthsglCGPLXfi31vTrVxNeRfAOztVdK9D+ztolbA8MaaMi2+tDfI+bXO pnAlJcozSPWiZbHQ3hHwpO+o1GU8mzLvJHcp9znEcmJpTw6A+TOTIJ38kwmWQZvzQoJGtX l92D0RkvrLSmND+jQ45lGHieSRV3pNb1gRn23mXIOPke2uu9LjxLjoJrzgtytnHPEJxo1p myv2ddm9UJSdnlP6B0ANUTuDIxwZUC4LB3aw2kTFCzrOGd6TYUBqmsCPktOgnQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1770931497; a=rsa-sha256; cv=none; b=EXwgxXIe0ziRTMJzmcqDjXwta0EKUp4E4Unt763CeodzrrVNp+BfdQzW09BNjnlW7VQCqV 0HPFs+SN+k+jO6ygcB1KuYL1NJhC7JtJfqfMwoduCtzU/sqAblsDHm2mRPZYTjmqATjD+p Gkp7/T7C9F2gnyINvcpY30SYUsuQTNOyOjhMpYA3P9cSomSHk1/kGnpCJheZRNtIYIksz/ FS3H5mdvTp52bGZjEDBJ2hw8OmSLlvjB2A2HsDTmPg5p1ru1FDFv7farS3qA8aUWEI+0Jb Ex7u6WFUCmFTB96Y0W6fc/u16a2JZNSpQqXWdPjAjnrIy3l6squaJOEZ9aIHug== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770931497; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=vmypvPfJiuS1yW04246ByHsn95ck7jISw0sBcD2WUWQ=; b=FCAHP/rA6QIjTVd1VSTjotjUFnwWF15c89WCpWbovnBp35WKJZfUlKDYtf/bw6J71YN7+v CJSwmb1oZAt7AokBMW7qkqFDAjTyOtIXa+hvhNvtNBFzzT91ePcZcPgJT/rJFSi6DKYRuR 5F+RgB/RNQhTlnz1gALIKtG9KAlXhTKp7WkySPwB8wvF9LQb0a3x8BKDhHuaD4zvKbsj8z u4wZkI4Tbt+QJvGZq7X5yoU/uO34/CJ2dwY5jO8qMrree0lqOyMp+EkGQpUUjIcwl0+qQF mnUc4kLpIaX2PkkVJO/nRU6i/czG+hvbAa2vXEUNdjhpWFzGhkU3H96sPXBzxA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fBpGw676nztFZ for ; Thu, 12 Feb 2026 21:24:56 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1c60c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 12 Feb 2026 21:24:56 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav From: Colin Percival Subject: git: 53e0a1d1ff9b - releng/14.4 - libfetch: Check for failure to create SSL context List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.4 X-Git-Reftype: branch X-Git-Commit: 53e0a1d1ff9b9a8bd27fa65e0f84ca95f0e41298 Auto-Submitted: auto-generated Date: Thu, 12 Feb 2026 21:24:56 +0000 Message-Id: <698e4528.1c60c.13aedecf@gitrepo.freebsd.org> The branch releng/14.4 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=53e0a1d1ff9b9a8bd27fa65e0f84ca95f0e41298 commit 53e0a1d1ff9b9a8bd27fa65e0f84ca95f0e41298 Author: Dag-Erling Smørgrav AuthorDate: 2026-02-07 14:24:40 +0000 Commit: Colin Percival CommitDate: 2026-02-12 21:24:34 +0000 libfetch: Check for failure to create SSL context * Drop the ssl_meth member, there is no reason to hang on to it. * Replace deprecated SSLv23_client_method() with TLS_client_method(). * Check the return value from SSL_CTX_new(). Approved by: re (cperciva) MFC after: 1 week PR: 292903 Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55098 (cherry picked from commit 4e160c6197f75fda3d5d5997ce893087058cf718) (cherry picked from commit 4781aeb5b9cb564a53fee8128f6827402deaf9df) --- lib/libfetch/common.c | 10 +++++++--- lib/libfetch/common.h | 1 - 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/lib/libfetch/common.c b/lib/libfetch/common.c index a39bfb33e95c..d5423d8eb5d1 100644 --- a/lib/libfetch/common.c +++ b/lib/libfetch/common.c @@ -1183,8 +1183,11 @@ fetch_ssl(conn_t *conn, const struct url *URL, int verbose) X509_NAME *name; char *str; - conn->ssl_meth = SSLv23_client_method(); - conn->ssl_ctx = SSL_CTX_new(conn->ssl_meth); + if ((conn->ssl_ctx = SSL_CTX_new(TLS_client_method())) == NULL) { + fprintf(stderr, "SSL context creation failed\n"); + ERR_print_errors_fp(stderr); + return (-1); + } SSL_CTX_set_mode(conn->ssl_ctx, SSL_MODE_AUTO_RETRY); fetch_ssl_setup_transport_layer(conn->ssl_ctx, verbose); @@ -1195,7 +1198,8 @@ fetch_ssl(conn_t *conn, const struct url *URL, int verbose) conn->ssl = SSL_new(conn->ssl_ctx); if (conn->ssl == NULL) { - fprintf(stderr, "SSL context creation failed\n"); + fprintf(stderr, "SSL connection creation failed\n"); + ERR_print_errors_fp(stderr); return (-1); } SSL_set_fd(conn->ssl, conn->sd); diff --git a/lib/libfetch/common.h b/lib/libfetch/common.h index 7396c8a68ab6..06089aae5451 100644 --- a/lib/libfetch/common.h +++ b/lib/libfetch/common.h @@ -56,7 +56,6 @@ struct fetchconn { SSL *ssl; /* SSL handle */ SSL_CTX *ssl_ctx; /* SSL context */ X509 *ssl_cert; /* server certificate */ - const SSL_METHOD *ssl_meth; /* SSL method */ #endif int ref; /* reference count */ };