In the client side it will decode the extra info depending on the
feature bits, but if we always encode it with the old version then
the client could crash or gets the corrupted data. More detail
please see "parse_reply_info_create()" in kclient code.
Fixes: https://tracker.ceph.com/issues/63265
Signed-off-by: Xiubo Li <xiubli@redhat.com>
auto reply = make_message<MClientReply>(*req, 0);
if (created != inodeno_t()) {
bufferlist extra;
- encode(created, extra);
+ set_reply_extra_bl(req, created, extra);
reply->set_extra_bl(extra);
}
mds->send_message_client(reply, session);