You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The API which prunes documents of non-system xattrs can trigger an
exception when the incoming value is compressed. The expects that the
final (pruned) value will fit into the input buffer, if not an
exception occurs.
This exception can be made to trigger when the incoming buffer
contains a snappy compressed value. The code decompresses the value
and prunes the xattrs, then fails because in some cases the
decompressed and pruned value is larger than the buffer it arrived in.
This is made safe by changing the API so that we don't re-use the
input buffer for output data, instead a new buffer is returned, which
is empty except in the case when a modified/pruned value is to be
returned.
Change-Id: Icd18e632aba8178aac70843d41010e76ef659908
Reviewed-on: http://review.couchbase.org/109721
Tested-by: Build Bot <[email protected]>
Reviewed-by: Dave Rigby <[email protected]>
Well-Formed: Build Bot <[email protected]>
0 commit comments