ffmpeg | branch: master | Jack Lau <jacklau1...@qq.com> | Sun Jun 15 23:15:45 2025 +0800| [177b92df2b054895f75e3cdd00d68b91a47a243f] | committer: Zhao Zhili
avformat/tls_openssl: fix warnings when openssl is lower version api doc: https://docs.openssl.org/1.0.2/man3/BIO_s_mem In higher versions (openssl 1.0.2 and higher), the function signature is BIO *BIO_new_mem_buf(const void *buf, int len), so passing a const string doesn't cause an warnings. However, in lower versions of OpenSSL, the function signature becomes BIO *BIO_new_mem_buf(void *buf, int len), which leads to warnings. OpenSSL guarantees that it will not modify the string, so it's safe to cast the pem_str to (void *) to avoid this warning. Signed-off-by: Jack Lau <jacklau1...@qq.com> Signed-off-by: Zhao Zhili <zhiliz...@tencent.com> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=177b92df2b054895f75e3cdd00d68b91a47a243f --- libavformat/tls_openssl.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libavformat/tls_openssl.c b/libavformat/tls_openssl.c index 86e8935fee..2a3905891d 100644 --- a/libavformat/tls_openssl.c +++ b/libavformat/tls_openssl.c @@ -415,7 +415,11 @@ error: */ static EVP_PKEY *pkey_from_pem_string(const char *pem_str, int is_priv) { +#if OPENSSL_VERSION_NUMBER < 0x10002000L /* OpenSSL 1.0.2 */ + BIO *mem = BIO_new_mem_buf((void *)pem_str, -1); +#else BIO *mem = BIO_new_mem_buf(pem_str, -1); +#endif if (!mem) { av_log(NULL, AV_LOG_ERROR, "BIO_new_mem_buf failed\n"); return NULL; @@ -445,7 +449,11 @@ static EVP_PKEY *pkey_from_pem_string(const char *pem_str, int is_priv) */ static X509 *cert_from_pem_string(const char *pem_str) { +#if OPENSSL_VERSION_NUMBER < 0x10002000L /* OpenSSL 1.0.2 */ + BIO *mem = BIO_new_mem_buf((void *)pem_str, -1); +#else BIO *mem = BIO_new_mem_buf(pem_str, -1); +#endif if (!mem) { av_log(NULL, AV_LOG_ERROR, "BIO_new_mem_buf failed\n"); return NULL; _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".