Wireshark-bugs: [Wireshark-bugs] [Bug 8454] New: proto.c: get_[u]int_value() issues with values
Date: Sat, 09 Mar 2013 00:23:40 +0000
Bug ID 8454
Summary proto.c: get_[u]int_value() issues with values > 32 bits
Classification Unclassified
Product Wireshark
Version SVN
Hardware All
OS All
Status UNCONFIRMED
Severity Minor
Priority Low
Component Dissection engine (libwireshark)
Assignee bugzilla-admin@wireshark.org
Reporter steve@digidescorp.com
CC eapache@gmail.com

Build Information:
wireshark 1.9.1 (SVN Rev 48190 from /trunk)

Copyright 1998-2013 Gerald Combs <gerald@wireshark.org> 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 (64-bit) with GTK+ 2.24.13, with Cairo 1.12.14, with Pango 1.32.3,
with
GLib 2.34.2, with libpcap, with libz 1.2.7, with POSIX capabilities (Linux),
without libnl, with SMI 0.4.8, with c-ares 1.9.1, with Lua 5.1, without Python,
with GnuTLS 2.12.22, with Gcrypt 1.5.0, with MIT Kerberos, with GeoIP, with
PortAudio V19-devel (built Jul 21 2012 17:51:23), with AirPcap.

Running on Linux 3.7.9-201.fc18.x86_64, with locale en_US.UTF-8, with libpcap
version 1.3.0, with libz 1.2.7, GnuTLS 2.12.22, Gcrypt 1.5.0, without AirPcap.
Intel(R) Core(TM)2 Duo CPU     T9900  @ 3.06GHz

Built using gcc 4.7.2 20121109 (Red Hat 4.7.2-8).

--
The get_int_value() / get_uint_value() helper functions in proto.c handle large
(5+ byte) big-endian data differently than little-endian data. For
little-endian encoding, the 4 LSBs are parsed; for big-endian, the 4 MSBs are
parsed.

In the little-endian case, get_int_value() does not propagate the sign bit from
the MSB into the value that is returned.

The large values are accompanied by an expert warning "disclaimer," so these
are at best corner cases that are not advertised to work as expected, but it
would be good to handle them consistently.


You are receiving this mail because:
  • You are watching all bug changes.