https-connections から証明書を取得できる php 関数がありますが、smtp-starttls でも使用できるように拡張できますか?
「tcp://」として開き、「STARTTLS」コマンドを送信した後、「ssl://」に切り替えることはできますか?
function ssl_fetch_cert($domain, $port = 443)
{
$url = "ssl://{$domain}:{$port}";
$connection_context_option['ssl']['capture_peer_cert'] = TRUE;
$connection_context = stream_context_create($connection_context_option);
$connection_client = stream_socket_client($url, $errno, $errstr, 30, STREAM_CLIENT_CONNECT, $connection_context);
$connection_info = stream_context_get_params($connection_client);
// $sha256 = openssl_x509_fingerprint($connection_info['options']['ssl']['peer_certificate'], 'sha256');
return $connection_info['options']['ssl']['peer_certificate'];
}