summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatthew Sackman <matthew@lshift.net>2010-05-19 17:31:35 +0100
committerMatthew Sackman <matthew@lshift.net>2010-05-19 17:31:35 +0100
commit2604ad8d6faa63be8628c2d8cb9b440504a5d1ce (patch)
treeb784bb69b9c30abc3ae3f80ac29d5d54fe61ec5e /src
parentca35c251038c741970c7042e35f108d5c7bf58e0 (diff)
parent98e1a2751db91a531fee6da583cd5dee13e41186 (diff)
downloadrabbitmq-server-git-2604ad8d6faa63be8628c2d8cb9b440504a5d1ce.tar.gz
Merging bug 21239 into default
Diffstat (limited to 'src')
-rw-r--r--src/rabbit_reader.erl7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/rabbit_reader.erl b/src/rabbit_reader.erl
index 5cf519b795..c6bd2973e7 100644
--- a/src/rabbit_reader.erl
+++ b/src/rabbit_reader.erl
@@ -52,6 +52,7 @@
-define(NORMAL_TIMEOUT, 3).
-define(CLOSING_TIMEOUT, 1).
-define(CHANNEL_TERMINATION_TIMEOUT, 3).
+-define(SLEEP_BEFORE_SILENT_CLOSE, 3000).
%---------------------------------------------------------------------------
@@ -575,7 +576,11 @@ handle_method0(MethodName, FieldsBin, State) ->
end,
case State#v1.connection_state of
running -> send_exception(State, 0, CompleteReason);
- Other -> throw({channel0_error, Other, CompleteReason})
+ %% We don't trust the client at this point - force
+ %% them to wait for a bit so they can't DOS us with
+ %% repeated failed logins etc.
+ Other -> timer:sleep(?SLEEP_BEFORE_SILENT_CLOSE),
+ throw({channel0_error, Other, CompleteReason})
end
end.