Fixes: #2207
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
case CEPH_OSD_OP_WRITE:
++ctx->num_write;
{ // write
+ if (op.extent.length > osd_op.indata.length()) {
+ result = -EINVAL;
+ break;
+ }
__u32 seq = oi.truncate_seq;
if (seq && (seq > op.extent.truncate_seq) &&
(op.extent.offset + op.extent.length > oi.size)) {
case CEPH_OSD_OP_WRITEFULL:
++ctx->num_write;
{ // write full object
+ if (op.extent.length > osd_op.indata.length()) {
+ result = -EINVAL;
+ break;
+ }
result = check_offset_and_length(op.extent.offset, op.extent.length);
if (result < 0)
break;