]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
login-common: Pass SSL protocol details to auth
authorAki Tuomi <aki.tuomi@dovecot.fi>
Mon, 11 Dec 2017 09:16:02 +0000 (11:16 +0200)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Tue, 13 Mar 2018 12:09:40 +0000 (14:09 +0200)
src/login-common/sasl-server.c

index 2b8c2dac76dec4f9581c7bbfbc47a82088d0552f..ea6a9951979969d74e0ffc30a02af344781f9d6e 100644 (file)
@@ -378,8 +378,14 @@ void sasl_server_auth_begin(struct client *client,
        info.session_id = client_get_session_id(client);
        if (client->client_cert_common_name != NULL)
                info.cert_username = client->client_cert_common_name;
-       else if (client->ssl_iostream != NULL)
+       else if (client->ssl_iostream != NULL) {
                info.cert_username = ssl_iostream_get_peer_name(client->ssl_iostream);
+               info.ssl_cipher = ssl_iostream_get_cipher(client->ssl_iostream,
+                                                        &info.ssl_cipher_bits);
+               info.ssl_pfs = ssl_iostream_get_pfs(client->ssl_iostream);
+               info.ssl_protocol =
+                       ssl_iostream_get_protocol_name(client->ssl_iostream);
+       }
        info.flags = client_get_auth_flags(client);
        info.local_ip = client->local_ip;
        info.remote_ip = client->ip;