If name is not found in subjectAltNames, report it as error.
Fixes Panic: file iostream-openssl-common.c: line 177 (openssl_cert_match_name): assertion failed: (*reason_r != NULL)
/* verify against CommonName only when there wasn't any DNS
SubjectAltNames */
if (dns_names) {
- i_assert(*reason_r != NULL);
- ret = i < count;
+ i_assert(*reason_r != NULL || i == count);
+ if (i == count) {
+ *reason_r = t_strdup_printf(
+ "No match to %u SubjectAltNames",
+ count);
+ ret = FALSE;
+ } else {
+ ret = TRUE;
+ }
} else {
const char *cname = get_cname(cert);