summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdward Hervey <edward@centricular.com>2019-02-13 17:24:50 +0100
committerTim-Philipp Müller <tim@centricular.com>2019-05-02 10:51:47 +0100
commitc262bc93d6ea2857aa35e13309890dd26814055d (patch)
tree0c19db5800e3bd46f72e88a8197f0ffa439916a3
parent94b16f15d8a14fbd9a88bc8d0aa0f14221f15645 (diff)
downloadgstreamer-plugins-bad-c262bc93d6ea2857aa35e13309890dd26814055d.tar.gz
dtls: Don't abort on non-fatal issues
OpenSSL will take care of returning valid context if there are only non-fatal issues. Don't abort in those cases and instead just print out the issues Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/811
-rw-r--r--ext/dtls/gstdtlsagent.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/ext/dtls/gstdtlsagent.c b/ext/dtls/gstdtlsagent.c
index 2b059c19b..42d746fda 100644
--- a/ext/dtls/gstdtlsagent.c
+++ b/ext/dtls/gstdtlsagent.c
@@ -189,14 +189,17 @@ gst_dtls_agent_init (GstDtlsAgent * self)
#else
priv->ssl_context = SSL_CTX_new (DTLSv1_method ());
#endif
- if (ERR_peek_error () || !priv->ssl_context) {
- priv->ssl_context = NULL;
-
+ if (!priv->ssl_context) {
GST_WARNING_OBJECT (self, "Error creating SSL Context");
ERR_print_errors_cb (ssl_warn_cb, self);
g_return_if_reached ();
}
+ /* If any non-fatal issues happened, print them out and carry on */
+ if (ERR_peek_error ()) {
+ ERR_print_errors_cb (ssl_warn_cb, self);
+ ERR_clear_error ();
+ }
SSL_CTX_set_verify_depth (priv->ssl_context, 2);
SSL_CTX_set_tlsext_use_srtp (priv->ssl_context, "SRTP_AES128_CM_SHA1_80");