forked from PsychoticNinja/irssi
Fix indention.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5186 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
350b346c84
commit
4976f75295
@ -97,28 +97,28 @@ static char *tls_text_name(X509_NAME *name, int nid)
|
|||||||
|
|
||||||
if (name == 0 || (pos = X509_NAME_get_index_by_NID(name, nid, -1)) < 0) {
|
if (name == 0 || (pos = X509_NAME_get_index_by_NID(name, nid, -1)) < 0) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
entry = X509_NAME_get_entry(name, pos);
|
entry = X509_NAME_get_entry(name, pos);
|
||||||
g_return_val_if_fail(entry != NULL, NULL);
|
g_return_val_if_fail(entry != NULL, NULL);
|
||||||
entry_str = X509_NAME_ENTRY_get_data(entry);
|
entry_str = X509_NAME_ENTRY_get_data(entry);
|
||||||
g_return_val_if_fail(entry_str != NULL, NULL);
|
g_return_val_if_fail(entry_str != NULL, NULL);
|
||||||
|
|
||||||
/* Convert everything into UTF-8. It's up to OpenSSL to do something
|
/* Convert everything into UTF-8. It's up to OpenSSL to do something
|
||||||
reasonable when converting ASCII formats that contain non-ASCII
|
reasonable when converting ASCII formats that contain non-ASCII
|
||||||
content. */
|
content. */
|
||||||
if ((utf8_length = ASN1_STRING_to_UTF8(&utf8_value, entry_str)) < 0) {
|
if ((utf8_length = ASN1_STRING_to_UTF8(&utf8_value, entry_str)) < 0) {
|
||||||
g_warning("Error decoding ASN.1 type=%d", ASN1_STRING_type(entry_str));
|
g_warning("Error decoding ASN.1 type=%d", ASN1_STRING_type(entry_str));
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (has_internal_nul((char *)utf8_value, utf8_length)) {
|
if (has_internal_nul((char *)utf8_value, utf8_length)) {
|
||||||
g_warning("NUL character in hostname in certificate");
|
g_warning("NUL character in hostname in certificate");
|
||||||
OPENSSL_free(utf8_value);
|
OPENSSL_free(utf8_value);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
result = g_strdup((char *) utf8_value);
|
result = g_strdup((char *) utf8_value);
|
||||||
OPENSSL_free(utf8_value);
|
OPENSSL_free(utf8_value);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
@ -168,10 +168,10 @@ static gboolean irssi_ssl_verify_hostname(X509 *cert, const char *hostname)
|
|||||||
if (cert_dns_name && *cert_dns_name) {
|
if (cert_dns_name && *cert_dns_name) {
|
||||||
matched = match_hostname(cert_dns_name, hostname);
|
matched = match_hostname(cert_dns_name, hostname);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Free stack *and* member GENERAL_NAME objects */
|
/* Free stack *and* member GENERAL_NAME objects */
|
||||||
sk_GENERAL_NAME_pop_free(gens, GENERAL_NAME_free);
|
sk_GENERAL_NAME_pop_free(gens, GENERAL_NAME_free);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (has_dns_name) {
|
if (has_dns_name) {
|
||||||
@ -182,15 +182,15 @@ static gboolean irssi_ssl_verify_hostname(X509 *cert, const char *hostname)
|
|||||||
return matched;
|
return matched;
|
||||||
} else { /* No subjectAltNames, look at CommonName */
|
} else { /* No subjectAltNames, look at CommonName */
|
||||||
cert_subject_cn = tls_text_name(X509_get_subject_name(cert), NID_commonName);
|
cert_subject_cn = tls_text_name(X509_get_subject_name(cert), NID_commonName);
|
||||||
if (cert_subject_cn && *cert_subject_cn) {
|
if (cert_subject_cn && *cert_subject_cn) {
|
||||||
matched = match_hostname(cert_subject_cn, hostname);
|
matched = match_hostname(cert_subject_cn, hostname);
|
||||||
if (! matched) {
|
if (! matched) {
|
||||||
g_warning("SSL certificate common name '%s' doesn't match host name '%s'", cert_subject_cn, hostname);
|
g_warning("SSL certificate common name '%s' doesn't match host name '%s'", cert_subject_cn, hostname);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
g_warning("No subjectAltNames and no valid common name in certificate");
|
g_warning("No subjectAltNames and no valid common name in certificate");
|
||||||
}
|
}
|
||||||
free(cert_subject_cn);
|
free(cert_subject_cn);
|
||||||
}
|
}
|
||||||
|
|
||||||
return matched;
|
return matched;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user