[FFmpeg-devel] [PATCH 13/14] avformat/tls_openssl: make generating fingerprints optional

Timo Rothenpieler timo at rothenpieler.org
Sun Jul 13 22:24:47 EEST 2025


---
 libavformat/tls_openssl.c | 20 ++++++++++++--------
 1 file changed, 12 insertions(+), 8 deletions(-)

diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c
index cd11419fee..48d8edb08a 100644
--- a/libavformat/tls_openssl.c
+++ b/libavformat/tls_openssl.c
@@ -216,11 +216,13 @@ int ff_ssl_read_key_cert(char *key_url, char *cert_url, char *key_buf, size_t ke
     snprintf(cert_buf, cert_sz, "%s", cert_tem);
 
     /* Generate fingerprint. */
-    *fingerprint = generate_fingerprint(cert);
-    if (!*fingerprint) {
-        av_log(NULL, AV_LOG_ERROR, "TLS: Failed to generate fingerprint from %s\n", cert_url);
-        ret = AVERROR(EIO);
-        goto end;
+    if (fingerprint) {
+        *fingerprint = generate_fingerprint(cert);
+        if (!*fingerprint) {
+            av_log(NULL, AV_LOG_ERROR, "TLS: Failed to generate fingerprint from %s\n", cert_url);
+            ret = AVERROR(EIO);
+            goto end;
+        }
     }
 
 end:
@@ -371,9 +373,11 @@ static int openssl_gen_certificate(EVP_PKEY *pkey, X509 **cert, char **fingerpri
         goto einval_end;
     }
 
-    *fingerprint = generate_fingerprint(*cert);
-    if (!*fingerprint) {
-        goto enomem_end;
+    if (fingerprint) {
+        *fingerprint = generate_fingerprint(*cert);
+        if (!*fingerprint) {
+            goto enomem_end;
+        }
     }
 
     goto end;
-- 
2.49.0



More information about the ffmpeg-devel mailing list