From fc19d242a581dbca8756ec121bca4046676bc0ed Mon Sep 17 00:00:00 2001
From: Simon Morlat <simon.morlat@linphone.org>
Date: Wed, 5 Sep 2018 14:54:09 +0200
Subject: [PATCH] Avoid a crash when the dtls user certificate path is not set.

---
 coreapi/bellesip_sal/sal_impl.c          | 3 +++
 src/conference/session/media-session.cpp | 1 +
 2 files changed, 4 insertions(+)

diff --git a/coreapi/bellesip_sal/sal_impl.c b/coreapi/bellesip_sal/sal_impl.c
index 3f7126b658..d0215c3a26 100644
--- a/coreapi/bellesip_sal/sal_impl.c
+++ b/coreapi/bellesip_sal/sal_impl.c
@@ -247,6 +247,9 @@ void sal_certificates_chain_parse_directory(char **certificate_pem, char **key_p
 				*certificate_pem = belle_sip_certificates_chain_get_pem(certificate);
 				*key_pem = belle_sip_signing_key_get_pem(key);
 				ms_message("Generate self-signed certificate with CN=%s successful\n", subject);
+			}else{
+				ms_error("Self-signed certificate generation failed.");
+				return;
 			}
 		}
 	}
diff --git a/src/conference/session/media-session.cpp b/src/conference/session/media-session.cpp
index 33c150e3bf..32042b40b5 100644
--- a/src/conference/session/media-session.cpp
+++ b/src/conference/session/media-session.cpp
@@ -1757,6 +1757,7 @@ void MediaSessionPrivate::setupDtlsParams (MediaStream *ms) {
 		char *certificate = nullptr;
 		char *key = nullptr;
 		char *fingerprint = nullptr;
+		
 		sal_certificates_chain_parse_directory(&certificate, &key, &fingerprint,
 			linphone_core_get_user_certificates_path(q->getCore()->getCCore()), "linphone-dtls-default-identity", SAL_CERTIFICATE_RAW_FORMAT_PEM, true, true);
 		if (fingerprint) {
-- 
GitLab