bugfix lookup by X509_get_subject_name
This commit is contained in:
@@ -178,6 +178,7 @@ void ssl_mid_cert_kafka_logger_send(const char *sni, const char *fingerprint, co
|
|||||||
void ssl_fetch_trusted_cert_from_chain(STACK_OF(X509) * cert_chain, X509_STORE *trusted_store, const char *hostname) {
|
void ssl_fetch_trusted_cert_from_chain(STACK_OF(X509) * cert_chain, X509_STORE *trusted_store, const char *hostname) {
|
||||||
int ret;
|
int ret;
|
||||||
int deep;
|
int deep;
|
||||||
|
char *pem = NULL;
|
||||||
char *subj = NULL;
|
char *subj = NULL;
|
||||||
char *issuer = NULL;
|
char *issuer = NULL;
|
||||||
char *fingerprint = NULL;
|
char *fingerprint = NULL;
|
||||||
@@ -203,19 +204,21 @@ void ssl_fetch_trusted_cert_from_chain(STACK_OF(X509) * cert_chain, X509_STORE *
|
|||||||
|
|
||||||
stmp.type = X509_LU_NONE;
|
stmp.type = X509_LU_NONE;
|
||||||
stmp.data.ptr = NULL;
|
stmp.data.ptr = NULL;
|
||||||
ret = X509_LOOKUP_by_subject(lookup, X509_LU_X509, X509_get_issuer_name(cert), &stmp);
|
ret = X509_LOOKUP_by_subject(lookup, X509_LU_X509, X509_get_subject_name(cert), &stmp);
|
||||||
subj = ssl_x509_subject(cert);
|
subj = ssl_x509_subject(cert);
|
||||||
issuer = ssl_x509_issuer(cert);
|
issuer = ssl_x509_issuer(cert);
|
||||||
fingerprint = ssl_x509_fingerprint(cert, 0);
|
fingerprint = ssl_x509_fingerprint(cert, 0);
|
||||||
TFE_LOG_DEBUG(g_default_logger, "[dep:%d/%d] sin:%s, subject:(%s); issuer:(%s); fingerprint:%s; in_trusted_store:%d", i, deep,
|
pem = ssl_x509_to_pem(cert);
|
||||||
hostname, subj ? subj : "NULL", issuer ? issuer : "NULL", fingerprint ? fingerprint : "NULL", ret);
|
|
||||||
if (!ret) {
|
TFE_LOG_ERROR(g_default_logger, "[dep:%d/%d] in_trusted_store:%d, sin:%s; subject:(%s); issuer:(%s); fingerprint:%s; cert:%s",
|
||||||
char *pem = ssl_x509_to_pem(cert);
|
i, deep, ret, (hostname ? hostname : "NULL"), (subj ? subj : "NULL"), (issuer ? issuer : "NULL"), (fingerprint ? fingerprint : "NULL"),
|
||||||
if (pem) {
|
((pem && g_kafka_logger->enable == 0x10) ? pem : " ..."));
|
||||||
ssl_mid_cert_kafka_logger_send(hostname, fingerprint, pem);
|
|
||||||
free(pem);
|
if (!ret && fingerprint && pem) {
|
||||||
}
|
ssl_mid_cert_kafka_logger_send(hostname, fingerprint, pem);
|
||||||
}
|
}
|
||||||
|
if (pem)
|
||||||
|
free(pem);
|
||||||
if (subj)
|
if (subj)
|
||||||
free(subj);
|
free(subj);
|
||||||
if (issuer)
|
if (issuer)
|
||||||
|
|||||||
Reference in New Issue
Block a user