summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Sebastien Pedron <jean-sebastien@rabbitmq.com>2014-12-02 17:45:27 +0100
committerJean-Sebastien Pedron <jean-sebastien@rabbitmq.com>2014-12-02 17:45:27 +0100
commit6aa27b4694b043423d2d992602643420f955f91d (patch)
tree82078df8b1e9bb589dfe4c845287a0fee7ec8df2
parent2c4bdf1d191d97d55461209f9f185a044ab84433 (diff)
downloadrabbitmq-server-6aa27b4694b043423d2d992602643420f955f91d.tar.gz
Only include ssl/certificate informations when the connection is over SSL
This gives lighter notifications for plain TCP connections.
-rw-r--r--src/rabbit_reader.erl23
1 files changed, 17 insertions, 6 deletions
diff --git a/src/rabbit_reader.erl b/src/rabbit_reader.erl
index 60246fbe..1ec8a150 100644
--- a/src/rabbit_reader.erl
+++ b/src/rabbit_reader.erl
@@ -60,7 +60,10 @@
-define(AUTH_NOTIFICATION_INFO_KEYS,
[host, vhost, name, peer_host, peer_port, protocol, auth_mechanism,
- ssl, ssl_protocol, ssl_cipher, peer_cert_issuer, peer_cert_subject,
+ ssl]).
+
+-define(AUTH_NOTIFICATION_SSL_INFO_KEYS,
+ [ssl_protocol, ssl_cipher, peer_cert_issuer, peer_cert_subject,
peer_cert_validity]).
-define(IS_RUNNING(State),
@@ -1114,13 +1117,21 @@ notify_auth_result(Username, AuthResult, Msg, Args, State) ->
name -> {connection_name, i(name, State)};
_ -> {Item, i(Item, State)}
end || Item <- ?AUTH_NOTIFICATION_INFO_KEYS],
- EventProps2 = case Username of
- none -> [{name, ''} | EventProps1];
- _ -> [{name, Username} | EventProps1]
+ EventProps2 = case i(ssl, State) of
+ false -> EventProps1;
+ true -> EventProps1 ++ [
+ case Item of
+ name -> {connection_name, i(name, State)};
+ _ -> {Item, i(Item, State)}
+ end || Item <- ?AUTH_NOTIFICATION_SSL_INFO_KEYS]
+ end,
+ EventProps3 = case Username of
+ none -> [{name, ''} | EventProps2];
+ _ -> [{name, Username} | EventProps2]
end,
EventProps = case Msg of
- "" -> EventProps2;
- _ -> [{error, rabbit_misc:format(Msg, Args)} | EventProps2]
+ "" -> EventProps3;
+ _ -> [{error, rabbit_misc:format(Msg, Args)} | EventProps3]
end,
rabbit_event:notify(AuthResult, EventProps).