outbound_smtp_tls_verify_callback

March 26, 2020

Name

outbound_smtp_tls_verify_callback — This hook allows you to augment the built-in TLS verification process for outbound SMTP sessions.

Synopsis

#include "hooks/core/outbound_smtp_tls_verify_callback.h"

| int **core_outbound_smtp_tls_verify_callback** ( | closure, |   |
|   | dc, |   |
|   | sslctx, |   |
|   | preverify_ok, |   |
|   | subject, |   |
|   | issuer, |   |
|   | x509ctx); |   |

void * <var class="pdparam">closure</var>;
delivery_construct * <var class="pdparam">dc</var>;
ec_ssl_ctx * <var class="pdparam">sslctx</var>;
int <var class="pdparam">preverify_ok</var>;
const char * <var class="pdparam">subject</var>;
const char * <var class="pdparam">issuer</var>;
struct ssl_x509_store_ctx_st * <var class="pdparam">x509ctx</var>;

Description

This hook allows you to augment the built-in TLS verification process for outbound SMTP sessions. The parameters are the same as the ec_ssl_verify_callback_func defined in ec_ssl.h, with the addition of the delivery_construct for the current session.

This hook is not called when server certificate verification is disabled, that is, when TLS_verify is set to no.

Parameters

closure

A pointer to the closure.

dc

The delivery_construct struct. See “delivery_construct”.

sslctx

An ec_ssl_ctx struct passed through from the OpenSSL verify callback. For documentation of this data structure see “ec_ssl_ctx”

preverify_ok

Passed through from the OpenSSL verify callback. Indicates whether the verification of the certificate in question passed (preverify_ok=1) or not (preverify_ok=0).

subject

Subject of the peer in the X509 certificate.

issuer

The issuer of the peer in the X509 certificate.

x509ctx

An ssl_x509_store_ctx_st structure.

Return Values

Returns 1 for "verification successful" and 0 for "verification UNsuccessful".

Threading

This hook will be called in the Scheduler thread.