Wireshark-bugs: [Wireshark-bugs] [Bug 7516] New: GIOP request_id used for sub dissectors is not
Date: Sun, 22 Jul 2012 23:34:12 -0700 (PDT)
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7516

           Summary: GIOP request_id used for sub dissectors is not
                    assigned when decoding GIOP 1.2 Request message
           Product: Wireshark
           Version: 1.6.7
          Platform: x86
        OS/Version: Windows XP
            Status: NEW
          Severity: Normal
          Priority: Low
         Component: Dissection engine (libwireshark)
        AssignedTo: bugzilla-admin@xxxxxxxxxxxxx
        ReportedBy: pd1981@xxxxxxxxxxx


Build Information:
Version 1.6.7 (SVN Rev 41973 from /trunk-1.6)

Copyright 1998-2012 Gerald Combs <gerald@xxxxxxxxxxxxx> and contributors.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Compiled (32-bit) with GTK+ 2.24.10, with GLib 2.28.8, with WinPcap (version
unknown), with libz 1.2.5, without POSIX capabilities, without libpcre, with
SMI
0.4.8, with c-ares 1.7.1, with Lua 5.1, without Python, with GnuTLS 2.12.18,
with Gcrypt 1.4.6, with MIT Kerberos, with GeoIP, with PortAudio V19-devel
(built Apr  6 2012), with AirPcap.

Running on Windows XP Service Pack 3, build 2600, with WinPcap version 4.1.2
(packet.dll version 4.1.0.2001), based on libpcap version 1.0 branch 1_0_rel0b
(20091008), GnuTLS 2.12.18, Gcrypt 1.4.6, without AirPcap.

Built using Microsoft Visual C++ 9.0 build 21022

Wireshark is Open Source Software released under the GNU General Public
License.

Check the man page and http://www.wireshark.org for more information.
--
The structure "MessageHeader" in file "Packet-giop.h" (line 51) is used for sub
dissectors.
The "req_id" of "MessageHeader" is not assigned when decoding giop request
version 1.2 or above (in function dissect_giop_request_1_2()), which is
correctly assigned when decoding giop request version 1.0~1.1, and all giop
reply.

So sub dissectors can not get the correct request_id, which is very important
for decoding CORBA remote call.

We may simply add:
header->req_id = request_id;
after:
request_id = get_CDR_ulong(tvb, &offset,
stream_is_big_endian,GIOP_HEADER_SIZE);
(in function dissect_giop_request_1_2(), packet-giop.c) to fix this bug.

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