Skip to content


Subversion checkout URL

You can clone with
Download ZIP


Client ignores frame max when publishing #84

squaremo opened this Issue · 3 comments

4 participants


While investigating issue 65 I noticed that the code that writes content frames ignores the frame max setting, and just sends the entire body as one frame.

RabbitMQ admits oversize frames (while being careful itself when framing), which is presumably why no-one has noticed.


Actually when rapidly pushing messages a few weeks ago the rabbit reported framing errors and then died causing me to back off of master. I didn't have time then to investigate.


That is likely to be because of reusing buffers (then writing over the contents before they are written to the socket), or perhaps frame interleaving. If you see it again please save the logs!


As squaremo points out above, the RabbitMQ broker admits oversize frames. But that is a DoS vector and therefore we are planning to change the broker to reject such frames. So this should really be fixed.

NB: the negotiated frame_max limits the total frame size, including header and end marker, which add up to 8 octets in total. Hence body fragmentation should occur in chunks of frame_max-8.

@majek majek referenced this issue from a commit in majek/node-amqp
@majek majek Fix #84 - slice outgoing messages according to frameMax advertised by…
… the server
@postwait postwait closed this in 793d54e
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.