diff --git a/lib/auth_cert.c b/lib/auth_cert.c index 54b4a50..a25b753 100644 --- a/lib/auth_cert.c +++ b/lib/auth_cert.c @@ -869,7 +869,10 @@ _gnutls_proc_x509_server_certificate (gnutls_session_t session, size = _gnutls_read_uint24 (p); p += 3; - if (size == 0) + /* some implementations send 00 00 03 00 00 00 + * instead of just 00 00 00. + */ + if (size == 0 || size == 3) { gnutls_assert (); /* no certificate was sent */