Wireshark-bugs: [Wireshark-bugs] [Bug 5772] New: Cleanup fragment display in DCE/RPC dissector

Date: Mon, 21 Mar 2011 15:51:22 -0700 (PDT)
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5772

           Summary: Cleanup fragment display in DCE/RPC dissector
           Product: Wireshark
           Version: SVN
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Enhancement
          Priority: Low
         Component: Wireshark
        AssignedTo: wireshark-bugs@xxxxxxxxxxxxx
        ReportedBy: doj@xxxxxxxxx


Created an attachment (id=6050)
 --> (https://bugs.wireshark.org/bugzilla/attachment.cgi?id=6050)
Cleanup fragment display in DCE/RPC dissector

Build Information:
works on all platforms.
--
The attachted patch cleans up the output of DCE/RPC fragment information in the
dissector. First I've simplified the

static const char* fragment_type(guint8 flags)

function to simply use a table of strings for the 4 possible values. The
"flags" parameter is binary ANDed to the lower two bits to avoid an
out-of-bounds access of the array. I've changed the strings/names to match what
was previously used in other places and I think the capitalized names are
easier to spot in the dissector's output.

The DCE/RPC dissector tried to print the information that the DCE/RPC PDU is
*not* a Single fragment into COL_INFO for the other 3 choices, by issueing the
corresponding col_append_str() in various places. I've consolidated all those
calls into a single call, which will print the fragment type for all 4 cases.
This gives a more consistent output on the info column.

Finally if you look at the "@@ -4468,21 +4444,12 @@" block of my patch, you'll
see I've removed another if() block which evaluates the fragment type. This
logic is now moved into the previous block "@@ -4455,7 +4429,9 @@" in the
"Fragment: %s" part of the proto_item_append_text().

-- 
Configure bugmail: https://bugs.wireshark.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.