diff --git a/src/sip/sipcall.cpp b/src/sip/sipcall.cpp
index ff5859ae27864b34049a3929f67bfe0d64355183..77ef419fee081e3692d10c3047ef41535153a977 100644
--- a/src/sip/sipcall.cpp
+++ b/src/sip/sipcall.cpp
@@ -964,23 +964,29 @@ std::map<std::string, std::string>
 SIPCall::getDetails() const
 {
     auto details = Call::getDetails();
-    details.emplace(DRing::Call::Details::PEER_HOLDING,          peerHolding_ ? TRUE_STR : FALSE_STR);
+    details.emplace(DRing::Call::Details::PEER_HOLDING,
+                    peerHolding_ ? TRUE_STR : FALSE_STR);
     if (transport_ and transport_->isSecure()) {
         const auto& tlsInfos = transport_->getTlsInfos();
-        auto cipher = pj_ssl_cipher_name(tlsInfos.cipher);
-        if (tlsInfos.cipher and not cipher)
-            RING_WARN("Unknown cipher: %d", tlsInfos.cipher);
-        details.emplace(DRing::TlsTransport::TLS_CIPHER,         cipher ? cipher : "");
-        details.emplace(DRing::TlsTransport::TLS_PEER_CERT,      tlsInfos.peerCert->toString());
-        auto ca = tlsInfos.peerCert->issuer;
-        unsigned n = 0;
-        while (ca) {
-            std::ostringstream name_str;
-            name_str << DRing::TlsTransport::TLS_PEER_CA_ << n++;
-            details.emplace(name_str.str(),                      ca->toString());
-            ca = ca->issuer;
+        const auto& cipher = pj_ssl_cipher_name(tlsInfos.cipher);
+        details.emplace(DRing::TlsTransport::TLS_CIPHER, cipher ? cipher : "");
+        if (tlsInfos.peerCert) {
+            details.emplace(DRing::TlsTransport::TLS_PEER_CERT,
+                            tlsInfos.peerCert->toString());
+            auto ca = tlsInfos.peerCert->issuer;
+            unsigned n = 0;
+            while (ca) {
+                std::ostringstream name_str;
+                name_str << DRing::TlsTransport::TLS_PEER_CA_ << n++;
+                details.emplace(name_str.str(), ca->toString());
+                ca = ca->issuer;
+            }
+            details.emplace(DRing::TlsTransport::TLS_PEER_CA_NUM,
+                            std::to_string(n));
+        } else {
+            details.emplace(DRing::TlsTransport::TLS_PEER_CERT, "");
+            details.emplace(DRing::TlsTransport::TLS_PEER_CA_NUM, "");
         }
-        details.emplace(DRing::TlsTransport::TLS_PEER_CA_NUM,    std::to_string(n));
     }
     return details;
 }