From: Radoslaw Zarzynski Date: Mon, 11 Feb 2019 00:09:48 +0000 (+0100) Subject: msg/async: reset the rx stream handler in ::handle_read_frame_length_and_tag. X-Git-Tag: v14.1.1~157^2~41 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=cbc09458e39f19378777945f52ff7fad247f1e8b;p=ceph.git msg/async: reset the rx stream handler in ::handle_read_frame_length_and_tag. Signed-off-by: Radoslaw Zarzynski --- diff --git a/src/msg/async/ProtocolV2.cc b/src/msg/async/ProtocolV2.cc index 5a856d71c9793..6bdcdc5f81977 100644 --- a/src/msg/async/ProtocolV2.cc +++ b/src/msg/async/ProtocolV2.cc @@ -298,8 +298,6 @@ struct SignedEncryptedFrame : public PayloadFrame { SignedEncryptedFrame(ProtocolV2 &protocol, char *payload, uint32_t length) : PayloadFrame() { - protocol.session_stream_handlers.rx->reset_rx_handler(); - ceph::bufferlist bl; bl.push_back(buffer::create_static(length, payload)); @@ -480,7 +478,6 @@ struct MessageHeaderFrame if (protocol.auth_meta->is_mode_secure()) { ceph_assert(protocol.session_stream_handlers.rx); - protocol.session_stream_handlers.rx->reset_rx_handler(); text = protocol.session_stream_handlers.rx->authenticated_decrypt_update( std::move(text), 8); @@ -1336,6 +1333,11 @@ CtPtr ProtocolV2::handle_read_frame_length_and_tag(char *buffer, int r) { return _fault(); } + if (auth_meta->is_mode_secure()) { + ceph_assert(session_stream_handlers.rx); + session_stream_handlers.rx->reset_rx_handler(); + } + bufferlist bl; bl.push_back(buffer::create_static(sizeof(uint32_t) * 2, buffer)); try {