Update to couchbase dissector for 'flexible framing extras' on errors

The flexible framing extras can be on success and error packets, so
move the call to dissect out of the success path.

See:
https://github.com/couchbase/kv_engine/blob/master/docs/BinaryProtocol.md#response-header-with-flexible-framing-extras

Change-Id: I6fdadf4a90bd1e9c2b1e6e37793cc7a105fad3a6
Reviewed-on: https://code.wireshark.org/review/26566
Reviewed-by: Dave Rigby <daver@couchbase.com>
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Sergey Avseyev <sergey.avseyev@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
This commit is contained in:
Jim Walker 2018-03-20 10:05:51 +00:00 committed by Pascal Quantin
parent c75d49719f
commit bd8df9eb88
1 changed files with 6 additions and 5 deletions

View File

@ -2246,14 +2246,15 @@ dissect_couchbase(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* dat
offset += 8;
}
// Flex frame extras should be dissected for success and errors
if (flex_frame_extras) {
dissect_flexible_framing_extras(tvb, pinfo, couchbase_tree, offset, flex_frame_extras);
offset += flex_frame_extras;
}
if (status == 0) {
guint16 path_len = 0;
if (flex_frame_extras) {
dissect_flexible_framing_extras(tvb, pinfo, couchbase_tree, offset, flex_frame_extras);
offset += flex_frame_extras;
}
dissect_extras(tvb, pinfo, couchbase_tree, offset, extlen, opcode, request,
&path_len);
offset += extlen;