summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2010-08-02 10:24:40 +0100
committerSimon MacMullen <simon@rabbitmq.com>2010-08-02 10:24:40 +0100
commitc76a37ac41de8f00525dbe09dd47567443078616 (patch)
tree1c949423437b4c02af5491aa1cda73838301b722
parent3dcf9e0f4022db355733f3cc1e2219c95438e2b3 (diff)
downloadrabbitmq-server-git-c76a37ac41de8f00525dbe09dd47567443078616.tar.gz
Work around broken py-amqplib handshaking
-rw-r--r--src/rabbit_reader.erl4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/rabbit_reader.erl b/src/rabbit_reader.erl
index 9603faf5a4..f687f814c8 100644
--- a/src/rabbit_reader.erl
+++ b/src/rabbit_reader.erl
@@ -569,6 +569,10 @@ handle_input(handshake, <<"AMQP", 1, 1, 0, 9>>, State) ->
handle_input(handshake, <<"AMQP", 1, 1, 8, 0>>, State) ->
start_connection({8, 0, 0}, rabbit_framing_amqp_0_8, State);
+%% py-amqplib has always sent this broken version. It wants 0-8.
+handle_input(handshake, <<"AMQP", 1, 1, 9, 1>>, State) ->
+ start_connection({8, 0, 0}, rabbit_framing_amqp_0_8, State);
+
handle_input(handshake, <<"AMQP", A, B, C, D>>, #v1{sock = Sock}) ->
refuse_connection(Sock, {bad_version, A, B, C, D});