qemu-kvm/kvm-crypto-replace-stat-with-access-for-credential-check.patch
Miroslav Rezanina 420a839a1e * Fri Jul 10 2026 Miroslav Rezanina <mrezanin@redhat.com> - 10.1.0-24
- kvm-net-tap-linux.c-avoid-abort-when-setting-invalid-fd.patch [RHEL-113894]
- kvm-crypto-only-verify-CA-certs-in-chain-of-trust.patch [RHEL-111934]
- kvm-crypto-remove-extraneous-pointer-usage-in-gnutls-cer.patch [RHEL-111934]
- kvm-crypto-fix-error-reporting-in-cert-chain-checks.patch [RHEL-111934]
- kvm-crypto-allow-client-server-cert-chains.patch [RHEL-111934]
- kvm-crypto-stop-requiring-key-encipherment-usage-in-x509.patch [RHEL-111934]
- kvm-crypto-switch-to-newer-gnutls-API-for-distinguished-.patch [RHEL-111934]
- kvm-crypto-remove-redundant-parameter-checking-CA-certs.patch [RHEL-111934]
- kvm-crypto-add-missing-free-of-certs-array.patch [RHEL-111934]
- kvm-crypto-replace-stat-with-access-for-credential-check.patch [RHEL-111934]
- kvm-crypto-remove-redundant-access-checks-before-loading.patch [RHEL-111934]
- kvm-crypto-move-check-for-TLS-creds-dir-property.patch [RHEL-111934]
- kvm-crypto-use-g_autofree-when-loading-x509-credentials.patch [RHEL-111934]
- kvm-crypto-remove-needless-indirection-via-parent_obj-fi.patch [RHEL-111934]
- kvm-crypto-move-release-of-DH-parameters-into-TLS-creds-.patch [RHEL-111934]
- kvm-crypto-shorten-the-endpoint-server-check-in-TLS-cred.patch [RHEL-111934]
- kvm-crypto-remove-duplication-loading-x509-CA-cert.patch [RHEL-111934]
- kvm-crypto-reduce-duplication-in-handling-TLS-priority-s.patch [RHEL-111934]
- kvm-crypto-introduce-method-for-reloading-TLS-creds.patch [RHEL-111934]
- kvm-crypto-introduce-a-wrapper-around-gnutls-credentials.patch [RHEL-111934]
- kvm-crypto-fix-lifecycle-handling-of-gnutls-credentials-.patch [RHEL-111934]
- kvm-crypto-make-TLS-credentials-structs-private.patch [RHEL-111934]
- kvm-crypto-deprecate-use-of-external-dh-params.pem-file.patch [RHEL-111934]
- kvm-crypto-avoid-loading-the-CA-certs-twice.patch [RHEL-111934]
- kvm-crypto-avoid-loading-the-identity-certs-twice.patch [RHEL-111934]
- kvm-crypto-expand-logic-to-cope-with-multiple-certificat.patch [RHEL-111934]
- kvm-crypto-support-upto-5-parallel-certificate-identitie.patch [RHEL-111934]
- kvm-docs-creation-of-x509-certs-compliant-with-post-quan.patch [RHEL-111934]
- kvm-iommufd-Introduce-handler-for-device-ATS-support.patch [RHEL-184675]
- kvm-vfio-pci-Add-ats-property.patch [RHEL-184675]
- Resolves: RHEL-113894
  ([RHEL.10.2][virual network] Hit qemu coredump when removed an interface that the guest is using from the host)
- Resolves: RHEL-111934
  (QEMU support for loading multiple sets of x509 certs for PQC hybrid mode)
- Resolves: RHEL-184675
  (NVIDIA:Backport vfio/pci: add vfio-pci ATS control property - RHEL 10.3)
2026-07-10 10:18:55 +02:00

51 lines
1.7 KiB
Diff

From 64e7e9680877199b86dfa042e581c624be48c21b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
Date: Fri, 1 Aug 2025 15:06:13 +0100
Subject: [PATCH 10/30] crypto: replace stat() with access() for credential
checks
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
RH-Author: Daniel P. Berrangé <berrange@redhat.com>
RH-MergeRequest: 460: crypto: changes to support multiple certificates for PQC
RH-Jira: RHEL-111934
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com>
RH-Commit: [9/27] d0106e01c1f312ed35cc405f5b992cfa5c912936 (berrange/centos-src-qemu)
Readability of the credential files is what matters for our usage,
so access() is more appropriate than stat().
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
(cherry picked from commit 2114ae9faaabe4ff1c455811bb38085324af17b7)
---
crypto/tlscreds.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/crypto/tlscreds.c b/crypto/tlscreds.c
index 9e59594d67..208a7e6d8f 100644
--- a/crypto/tlscreds.c
+++ b/crypto/tlscreds.c
@@ -100,7 +100,6 @@ qcrypto_tls_creds_get_path(QCryptoTLSCreds *creds,
char **cred,
Error **errp)
{
- struct stat sb;
int ret = -1;
if (!creds->dir) {
@@ -114,7 +113,7 @@ qcrypto_tls_creds_get_path(QCryptoTLSCreds *creds,
*cred = g_strdup_printf("%s/%s", creds->dir, filename);
- if (stat(*cred, &sb) < 0) {
+ if (access(*cred, R_OK) < 0) {
if (errno == ENOENT && !required) {
ret = 0;
} else {
--
2.52.0