Blame SOURCES/0002-Add-support-for-pkcs11-certificate-and-key-for-repos.patch

3cb208
From 1e7673d07308081f13e7bb1829cfed2ccd865ea0 Mon Sep 17 00:00:00 2001
3cb208
From: Masahiro Matsuya <mmatsuya@redhat.com>
3cb208
Date: Fri, 13 Nov 2020 17:37:59 +0100
3cb208
Subject: [PATCH] Add support for pkcs11 certificate and key for repository
3cb208
 authorization
3cb208
3cb208
msg: Add support for pkcs11 certificate and key for repository authorization
3cb208
type: enhancement
3cb208
resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1859495
3cb208
---
3cb208
 librepo/handle.c | 6 ++++++
3cb208
 1 file changed, 6 insertions(+)
3cb208
3cb208
diff --git a/librepo/handle.c b/librepo/handle.c
3cb208
index d8728c4..33edf5d 100644
3cb208
--- a/librepo/handle.c
3cb208
+++ b/librepo/handle.c
3cb208
@@ -649,6 +649,9 @@ lr_handle_setopt(LrHandle *handle,
3cb208
             lr_free(handle->sslclientcert);
3cb208
         handle->sslclientcert = g_strdup(va_arg(arg, char *));
3cb208
         c_rc = curl_easy_setopt(c_h, CURLOPT_SSLCERT, handle->sslclientcert);
3cb208
+        if (c_rc == CURLE_OK && handle->sslclientcert && !strncasecmp(handle->sslclientcert, "pkcs11:", 7)) {
3cb208
+            c_rc = curl_easy_setopt(c_h, CURLOPT_SSLCERTTYPE, "ENG");
3cb208
+        }
3cb208
         break;
3cb208
 
3cb208
     case LRO_SSLCLIENTKEY:
3cb208
@@ -656,6 +659,9 @@ lr_handle_setopt(LrHandle *handle,
3cb208
             lr_free(handle->sslclientkey);
3cb208
         handle->sslclientkey = g_strdup(va_arg(arg, char *));
3cb208
         c_rc = curl_easy_setopt(c_h, CURLOPT_SSLKEY, handle->sslclientkey);
3cb208
+        if (c_rc == CURLE_OK && handle->sslclientkey && !strncasecmp(handle->sslclientkey, "pkcs11:", 7)) {
3cb208
+            c_rc = curl_easy_setopt(c_h, CURLOPT_SSLKEYTYPE, "ENG");
3cb208
+        }
3cb208
         break;
3cb208
 
3cb208
     case LRO_SSLCACERT:
3cb208
-- 
3cb208
2.26.2
3cb208