Wireshark-bugs: [Wireshark-bugs] [Bug 11457] SIGSEGV in add_address_to_hash when loading Convers
Date: Sun, 13 Sep 2015 21:58:38 +0000

Comment # 5 on bug 11457 from
This appears to be a scoping issue.  I have the fix if it is, but I wanted to
share the "solution" because the same issue should exist in master (and I'd
prefer to fix it there and cherry-pick)

The problem I see is (in packet 5999) add_conversation_table_data_with_conv_id
trashes the "local" addr1, addr (which are really just pointers to the passed
in src/dst addresses.  They get trashed on the g_array_sized_new() call (which
seems odd).

The incoming src/dst addresses come from the locally declared fc_hdr fchdr in
dissect_fc_helper().  The fchdr is passed to the into the tap
(tap_queue_packet), but it looks like it's not guaranteed to stay around long
enough for the conversation.

I converted the fchdr to use wmem (both packet and pinfo scoped) and the crash
went away.  Concidence (of just moving memory around)? or should fchdr really
not be "function" scoped?


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