(the last remaining problem in that bug report):
When we expand a tree, check if any of its children need to be expanded too
(because the user left them expanded when s/he closed the parent).
In the process, rename expand_finfos() to check_expand_children() since the
function expands any children (subtrees) which should be expanded. Remove
one of that function's parameters too: just reference the global preference
that controls whether scrolling should be done or not.
Replace some tabs with spaces (for consistency).
svn path=/trunk/; revision=50516
Apply the fix for https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3290
to proto_tree_add_bits_item(). That is, test that we have offset+length bytes
left in the TVB before trying to fake the item.
svn path=/trunk/; revision=50504
time_t. (That also lets us not care how big a time_t is, except that we
have a not-fixable Y2.038K problem with 32-bit time_t, about which we
merely warn in a comment.)
svn path=/trunk/; revision=50502
Don't nest g_strconcat() calls: g_strconcat(a, g_strconcat(b, c, NULL), NULL)
is equivalent to g_strconcat(a, b, c, NULL). (And g_strconcat(b, c) is
incorrect - you need a NULL at the end of the list.)
Checking whether a pointer is "> 0" is useful only in platform-dependent
situations or if you're doing a really greasy hack such as stuffing a
flag into the uppermost bit of the pointer; the test should just check
whether the pointer is null or not.
svn path=/trunk/; revision=50500
->tvb_init() knows nothing about new tvb and can only do some kind of bzero()
it's much better if we initialize object after tvb_new() [which anyway must be done]
+ try to fix OSX build.
svn path=/trunk/; revision=50490
- tshark -q -z io,stat,1 causes core dump for files larger than ~2MB
(with this fix it will still overflow on 32-bits for frame time > 4294s)
- In tshark's "io,stat" eliminate the unrequested "Frames and bytes" col, fix formatting, and add "Duration"
From me:
Added casts to squelch compiler warnings on win7 64bit
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8839
svn path=/trunk/; revision=50488
Before:
user0 - USER 0
user1 - USER 1
user10 - USER 10
user11 - USER 11
user12 - USER 12
user13 - USER 13
user14 - USER 14
user15 - USER 15
user2 - USER 2
user3 - USER 3
user4 - USER 4
user5 - USER 5
user6 - USER 6
user7 - USER 7
user8 - USER 8
user9 - USER 9
After:
user0 - USER 0
user1 - USER 1
user2 - USER 2
user3 - USER 3
user4 - USER 4
user5 - USER 5
user6 - USER 6
user7 - USER 7
user8 - USER 8
user9 - USER 9
user10 - USER 10
user11 - USER 11
user12 - USER 12
user13 - USER 13
user14 - USER 14
user15 - USER 15
svn path=/trunk/; revision=50482
Convert the last DISSECTOR_ASSERTs into potential expert infos, and do the right
offset manipulation and verification to avoid long (or infinite) loops when
those conditions are hit. This includes fixing some long loops I accidentally
introduced in r50432.
svn path=/trunk/; revision=50478
reported by Laurent Butti
a TPDU's length field must never be 0
this length field was decremented without prior checking,
allocating length-1 bytes of memory caused a dissector assert
svn path=/trunk/; revision=50474
Add Summary Statistics to qtshark (Statistics => Summary)
Now, use tabs to split summary display (File Capture details, Capture Statistics)
Add also Comment Summary tab (to replace Statistics => Comments Summary)
From me :
Fix order of summary files in Qtshark.pro
svn path=/trunk/; revision=50470
Correct AVP codes 712 and 713, add 714-719.
Add and fix some enum codes.
Update specification version.
From me: Fix up indentation.
svn path=/trunk/; revision=50463
The response of the OSD-2 LIST command may contain attributes in multi-object retrieved attributes format. Currently all proto_items for that attributes are put under the SCSI Payload tree, yielding a large list of items:
Partition Id
Object Type
Attribute Page
Attribute Number
Attribute Length
(optional attribute-specific fields)
Attribute Page, ...
Partition Id
Object Type
Attribute Page, ...
...
This patch classifies the OSD-2 LIST attributes (from the Data In buffer) in one tree per object and one sub-tree per attribute
Partition Id (ett_osd_multi_object tree)
Object Type
Attribute (ett_osd_attribute tree)
Attribute Page
Attribute Number
Attribute Length
(optional attribute-specific fields)
Attribute, ...
Partition Id
Object Type
Attribute Page, ...
...
The same approach is applied to attributes in the Get/Set attributes segments.
A function *attribute_page_numbers_t lookup_osd_attribute(page,number) was created, with common code that is called from dissect_osd_attributes_list, dissect_osd_attribute_value and dissect_osd2_attribute_list_entry.
The trees are built in function dissect_osd_attribute_list_entry. That function was modified for avoiding code duplication with case 0x09 of dissect_osd_attributes_list. A missing padding was added in the process.
The function dissect_osd_partition_id now returns proto_item*, so that we can create a subtree rooted at the partition_id (previously it returned an offset, but the return value was unused).
From me:
Fix clang warning duplicate code...
Remove some trailing whitespace
svn path=/trunk/; revision=50462