summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Klishin <michael@clojurewerkz.org>2021-04-19 13:56:39 +0300
committerMichael Klishin <michael@clojurewerkz.org>2021-04-19 13:56:39 +0300
commit15875017337efb7affa862034c3389bd5b3aa6b2 (patch)
tree0b1bd14ccbc966573edc5f05f7df2a39b1af8d46
parent81f3005b95b5c85db19fcca853db15c92047bbc1 (diff)
downloadrabbitmq-server-git-15875017337efb7affa862034c3389bd5b3aa6b2.tar.gz
Pass Dialyzer
x.509 certificate extensions do not really have types in OTP's public_key, so our hands are tied.
-rw-r--r--deps/rabbit/src/rabbit_ssl.erl2
-rw-r--r--deps/rabbit_common/src/rabbit_cert_info.erl6
2 files changed, 7 insertions, 1 deletions
diff --git a/deps/rabbit/src/rabbit_ssl.erl b/deps/rabbit/src/rabbit_ssl.erl
index 7fc0700aff..44dbdada7b 100644
--- a/deps/rabbit/src/rabbit_ssl.erl
+++ b/deps/rabbit/src/rabbit_ssl.erl
@@ -28,6 +28,8 @@
{ssl_cipher_format, suite_map_to_openssl_str, 1},
{ssl_cipher_format, suite_map_to_bin, 1}]).
+-dialyzer({nowarn_function, peer_cert_auth_name/2}).
+
-type certificate() :: rabbit_cert_info:certificate().
-type cipher_suites_mode() :: default | all | anonymous.
diff --git a/deps/rabbit_common/src/rabbit_cert_info.erl b/deps/rabbit_common/src/rabbit_cert_info.erl
index 4f217aa891..2ea1ebd594 100644
--- a/deps/rabbit_common/src/rabbit_cert_info.erl
+++ b/deps/rabbit_common/src/rabbit_cert_info.erl
@@ -25,6 +25,10 @@
-type certificate() :: public_key:der_encoded().
+%% x.509 certificate extensions usually look like key/value pairs but can
+%% be just about any value
+-type certificate_extension_value() :: any().
+
%%--------------------------------------------------------------------------
%% High-level functions used by reader
%%--------------------------------------------------------------------------
@@ -68,7 +72,7 @@ extensions(Cert) ->
Extensions
end, Cert).
--spec subject_alternative_names(certificate()) -> [{atom(), string()}].
+-spec subject_alternative_names(certificate()) -> [certificate_extension_value()].
subject_alternative_names(Cert) ->
Extensions = extensions(Cert),
try lists:keyfind(?'id-ce-subjectAltName', #'Extension'.extnID, Extensions) of