summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--deps/rabbit/src/rabbit_amqqueue.erl2
-rw-r--r--deps/rabbitmq_auth_backend_http/BUILD.bazel3
-rw-r--r--deps/rabbitmq_auth_backend_http/src/rabbit_auth_backend_http.erl4
-rw-r--r--deps/rabbitmq_auth_backend_ldap/BUILD.bazel4
-rw-r--r--deps/rabbitmq_auth_backend_oauth2/BUILD.bazel11
-rw-r--r--deps/rabbitmq_auth_backend_oauth2/src/Elixir.RabbitMQ.CLI.Ctl.Commands.AddUaaKeyCommand.erl2
-rw-r--r--deps/rabbitmq_auth_backend_oauth2/src/rabbit_auth_backend_oauth2.erl9
-rw-r--r--deps/rabbitmq_auth_backend_oauth2/src/rabbit_oauth2_scope.erl6
-rw-r--r--deps/rabbitmq_sharding/src/rabbit_sharding_exchange_decorator.erl6
-rw-r--r--deps/rabbitmq_sharding/src/rabbit_sharding_interceptor.erl5
-rw-r--r--deps/rabbitmq_sharding/src/rabbit_sharding_shard.erl8
11 files changed, 37 insertions, 23 deletions
diff --git a/deps/rabbit/src/rabbit_amqqueue.erl b/deps/rabbit/src/rabbit_amqqueue.erl
index e85b653438..ad33829689 100644
--- a/deps/rabbit/src/rabbit_amqqueue.erl
+++ b/deps/rabbit/src/rabbit_amqqueue.erl
@@ -214,7 +214,7 @@ declare(QueueName, Durable, AutoDelete, Args, Owner, ActingUser) ->
rabbit_framing:amqp_table(),
rabbit_types:maybe(pid()),
rabbit_types:username(),
- node()) ->
+ node() | {'ignore_location', node()}) ->
{'new' | 'existing' | 'owner_died', amqqueue:amqqueue()} |
{'absent', amqqueue:amqqueue(), absent_reason()} |
{protocol_error, Type :: atom(), Reason :: string(), Args :: term()}.
diff --git a/deps/rabbitmq_auth_backend_http/BUILD.bazel b/deps/rabbitmq_auth_backend_http/BUILD.bazel
index aabae0710f..27a78c2301 100644
--- a/deps/rabbitmq_auth_backend_http/BUILD.bazel
+++ b/deps/rabbitmq_auth_backend_http/BUILD.bazel
@@ -55,13 +55,12 @@ plt(
name = "base_plt",
apps = EXTRA_APPS,
plt = "//:base_plt",
- deps = DEPS,
+ deps = DEPS + RUNTIME_DEPS,
)
dialyze(
dialyzer_opts = RABBITMQ_DIALYZER_OPTS,
plt = ":base_plt",
- warnings_as_errors = False,
)
broker_for_integration_suites()
diff --git a/deps/rabbitmq_auth_backend_http/src/rabbit_auth_backend_http.erl b/deps/rabbitmq_auth_backend_http/src/rabbit_auth_backend_http.erl
index 66c6fbea27..63bead4269 100644
--- a/deps/rabbitmq_auth_backend_http/src/rabbit_auth_backend_http.erl
+++ b/deps/rabbitmq_auth_backend_http/src/rabbit_auth_backend_http.erl
@@ -194,10 +194,12 @@ join_tags(Tags) ->
Strings = [rabbit_data_coercion:to_list(T) || T <- Tags],
string:join(Strings, " ").
+-spec parse_peeraddr(inet:ip_address()) -> string().
parse_peeraddr(PeerAddr) ->
handle_inet_ntoa_peeraddr(inet:ntoa(PeerAddr), PeerAddr).
+-spec handle_inet_ntoa_peeraddr({'error', term()} | string(), inet:ip_address()) -> string().
handle_inet_ntoa_peeraddr({error, einval}, PeerAddr) ->
- rabbit_data_coercion:to_list(PeerAddr);
+ rabbit_data_coercion:to_list(io_lib:format("~w", [PeerAddr]));
handle_inet_ntoa_peeraddr(PeerAddrStr, _PeerAddr0) ->
PeerAddrStr.
diff --git a/deps/rabbitmq_auth_backend_ldap/BUILD.bazel b/deps/rabbitmq_auth_backend_ldap/BUILD.bazel
index 0cb72797da..4548b2b3ed 100644
--- a/deps/rabbitmq_auth_backend_ldap/BUILD.bazel
+++ b/deps/rabbitmq_auth_backend_ldap/BUILD.bazel
@@ -43,6 +43,7 @@ APP_MODULE = "rabbit_auth_backend_ldap_app"
EXTRA_APPS = [
"eldap",
+ "public_key",
]
DEPS = [
@@ -70,13 +71,12 @@ plt(
name = "base_plt",
apps = EXTRA_APPS,
plt = "//:base_plt",
- deps = DEPS,
+ deps = DEPS + RUNTIME_DEPS,
)
dialyze(
dialyzer_opts = RABBITMQ_DIALYZER_OPTS,
plt = ":base_plt",
- warnings_as_errors = False,
)
broker_for_integration_suites()
diff --git a/deps/rabbitmq_auth_backend_oauth2/BUILD.bazel b/deps/rabbitmq_auth_backend_oauth2/BUILD.bazel
index a1f4ba4dbb..676a3e0872 100644
--- a/deps/rabbitmq_auth_backend_oauth2/BUILD.bazel
+++ b/deps/rabbitmq_auth_backend_oauth2/BUILD.bazel
@@ -16,6 +16,11 @@ APP_NAME = "rabbitmq_auth_backend_oauth2"
APP_DESCRIPTION = "OAuth 2 and JWT-based AuthN and AuthZ backend"
+EXTRA_APPS = [
+ "inets",
+ "public_key",
+]
+
BUILD_DEPS = [
"//deps/rabbit_common:erlang_app",
"//deps/rabbitmq_cli:rabbitmqctl",
@@ -37,6 +42,7 @@ rabbitmq_app(
build_deps = BUILD_DEPS,
runtime_deps = RUNTIME_DEPS,
deps = DEPS,
+ extra_apps = EXTRA_APPS,
)
xref(
@@ -47,16 +53,17 @@ xref(
plt(
name = "base_plt",
+ apps = EXTRA_APPS,
+ plt = "//:base_plt",
deps = without(
"//deps/rabbitmq_cli:rabbitmqctl",
- BUILD_DEPS + DEPS,
+ BUILD_DEPS + DEPS + RUNTIME_DEPS,
),
)
dialyze(
dialyzer_opts = RABBITMQ_DIALYZER_OPTS + ["-Wno_undefined_callbacks"],
plt = ":base_plt",
- warnings_as_errors = False,
)
broker_for_integration_suites()
diff --git a/deps/rabbitmq_auth_backend_oauth2/src/Elixir.RabbitMQ.CLI.Ctl.Commands.AddUaaKeyCommand.erl b/deps/rabbitmq_auth_backend_oauth2/src/Elixir.RabbitMQ.CLI.Ctl.Commands.AddUaaKeyCommand.erl
index c005b9901c..a0446a6b9f 100644
--- a/deps/rabbitmq_auth_backend_oauth2/src/Elixir.RabbitMQ.CLI.Ctl.Commands.AddUaaKeyCommand.erl
+++ b/deps/rabbitmq_auth_backend_oauth2/src/Elixir.RabbitMQ.CLI.Ctl.Commands.AddUaaKeyCommand.erl
@@ -71,8 +71,6 @@ validate_json(Json) ->
{validation_failure, {bad_argument, Err}}
end;
{error, _} ->
- {validation_failure, {bad_argument, <<"Invalid JSON">>}};
- error ->
{validation_failure, {bad_argument, <<"Invalid JSON">>}}
end.
diff --git a/deps/rabbitmq_auth_backend_oauth2/src/rabbit_auth_backend_oauth2.erl b/deps/rabbitmq_auth_backend_oauth2/src/rabbit_auth_backend_oauth2.erl
index 012b91f847..345b239df3 100644
--- a/deps/rabbitmq_auth_backend_oauth2/src/rabbit_auth_backend_oauth2.erl
+++ b/deps/rabbitmq_auth_backend_oauth2/src/rabbit_auth_backend_oauth2.erl
@@ -167,7 +167,14 @@ validate_token_expiry(#{<<"exp">> := Exp}) when is_integer(Exp) ->
end;
validate_token_expiry(#{}) -> ok.
--spec check_token(binary()) -> {ok, map()} | {error, term()}.
+-spec check_token(binary()) ->
+ {'ok', map()} |
+ {'error', term() }|
+ {'refused',
+ 'signature_invalid' |
+ {'error', term()} |
+ {'invalid_aud', term()}}.
+
check_token(Token) ->
Settings = application:get_all_env(?APP),
case uaa_jwt:decode_and_verify(Token) of
diff --git a/deps/rabbitmq_auth_backend_oauth2/src/rabbit_oauth2_scope.erl b/deps/rabbitmq_auth_backend_oauth2/src/rabbit_oauth2_scope.erl
index 9b841adb0f..387c400b6f 100644
--- a/deps/rabbitmq_auth_backend_oauth2/src/rabbit_oauth2_scope.erl
+++ b/deps/rabbitmq_auth_backend_oauth2/src/rabbit_oauth2_scope.erl
@@ -50,7 +50,7 @@ topic_access(#resource{virtual_host = VHost, name = ExchangeName},
%% Internal -------------------------------------------------------------------
--spec get_scope_permissions([binary()]) -> [{rabbit_types:r(pattern), permission()}].
+%% -spec get_scope_permissions([binary()]) -> [{rabbit_types:r(pattern), permission()}].
get_scope_permissions(Scopes) when is_list(Scopes) ->
lists:filtermap(
fun(ScopeEl) ->
@@ -65,7 +65,7 @@ get_scope_permissions(Scopes) when is_list(Scopes) ->
concat_scopes(Scopes, Separator) when is_list(Scopes) ->
lists:concat(lists:join(Separator, lists:map(fun rabbit_data_coercion:to_list/1, Scopes))).
--spec parse_permission_pattern(binary()) -> {rabbit_types:r(pattern), permission()}.
+-spec parse_permission_pattern(binary()) -> {rabbit_types:vhost(), binary(), binary() | none, permission()} | 'ignore'.
parse_permission_pattern(<<"read:", ResourcePatternBin/binary>>) ->
Permission = read,
parse_resource_pattern(ResourcePatternBin, Permission);
@@ -79,7 +79,7 @@ parse_permission_pattern(_Other) ->
ignore.
-spec parse_resource_pattern(binary(), permission()) ->
- {rabbit_types:vhost(), binary(), binary() | none, permission()}.
+ {rabbit_types:vhost(), binary(), binary() | none, permission()} | 'ignore'.
parse_resource_pattern(Pattern, Permission) ->
case binary:split(Pattern, <<"/">>, [global]) of
[VhostPattern, NamePattern] ->
diff --git a/deps/rabbitmq_sharding/src/rabbit_sharding_exchange_decorator.erl b/deps/rabbitmq_sharding/src/rabbit_sharding_exchange_decorator.erl
index 8770c1913e..cc93dfacc0 100644
--- a/deps/rabbitmq_sharding/src/rabbit_sharding_exchange_decorator.erl
+++ b/deps/rabbitmq_sharding/src/rabbit_sharding_exchange_decorator.erl
@@ -35,7 +35,7 @@ serialise_events(_X) -> false.
create(transaction, _X) ->
ok;
create(none, X) ->
- maybe_start_sharding(X),
+ _ = maybe_start_sharding(X),
ok.
add_binding(_Tx, _X, _B) -> ok.
@@ -52,13 +52,13 @@ active_for(X) ->
%% we have to remove the policy from ?SHARDING_TABLE
delete(transaction, _X, _Bs) -> ok;
delete(none, X, _Bs) ->
- maybe_stop_sharding(X),
+ _ = maybe_stop_sharding(X),
ok.
%% we have to remove the old policy from ?SHARDING_TABLE
%% and then add the new one.
policy_changed(OldX, NewX) ->
- maybe_update_sharding(OldX, NewX),
+ _ = maybe_update_sharding(OldX, NewX),
ok.
%%----------------------------------------------------------------------------
diff --git a/deps/rabbitmq_sharding/src/rabbit_sharding_interceptor.erl b/deps/rabbitmq_sharding/src/rabbit_sharding_interceptor.erl
index f648b7fa73..3be038d6f7 100644
--- a/deps/rabbitmq_sharding/src/rabbit_sharding_interceptor.erl
+++ b/deps/rabbitmq_sharding/src/rabbit_sharding_interceptor.erl
@@ -166,5 +166,6 @@ consumer_count(QName) ->
rabbit_amqqueue:info(Q, [consumers])
end).
-precondition_failed(Format, QName) ->
- protocol_error(precondition_failed, Format, QName).
+-spec precondition_failed(io:format(), [any()]) -> no_return().
+precondition_failed(Format, Args) ->
+ protocol_error(precondition_failed, Format, Args).
diff --git a/deps/rabbitmq_sharding/src/rabbit_sharding_shard.erl b/deps/rabbitmq_sharding/src/rabbit_sharding_shard.erl
index ac6f436876..fe0344bfc1 100644
--- a/deps/rabbitmq_sharding/src/rabbit_sharding_shard.erl
+++ b/deps/rabbitmq_sharding/src/rabbit_sharding_shard.erl
@@ -29,7 +29,7 @@
%% We make sure the sharded queues are created when
%% RabbitMQ starts.
maybe_shard_exchanges() ->
- [maybe_shard_exchanges(V) || V <- rabbit_vhost:list_names()],
+ _ = [maybe_shard_exchanges(V) || V <- rabbit_vhost:list_names()],
ok.
maybe_shard_exchanges(VHost) ->
@@ -38,12 +38,12 @@ maybe_shard_exchanges(VHost) ->
%% queue needs to be declared on the respective node.
ensure_sharded_queues(X) ->
- add_queues(X),
+ _ = add_queues(X),
bind_queues(X).
maybe_update_shards(OldX, NewX) ->
- maybe_unbind_queues(routing_key(OldX), routing_key(NewX), OldX),
- add_queues(NewX),
+ _ = maybe_unbind_queues(routing_key(OldX), routing_key(NewX), OldX),
+ _ = add_queues(NewX),
bind_queues(NewX).
stop_sharding(OldX) ->