Huge thanks to our Platinum Members Endace and LiveAction,
and our Silver Member Veeam, for supporting the Wireshark Foundation and project.

Wireshark-dev: Re: [Wireshark-dev] Crash when using adns on win32

From: Graham Bloice <graham.bloice@xxxxxxxxxxxxx>
Date: Thu, 21 Feb 2008 19:49:49 +0000
Stig Bjørlykke wrote:
Hi.

I get a crash in the latest svn when using ADNS on win32 compiled with MSVC2005EE. In host_name_lookup_process() the adns_check() returns a adns_answer struct with some data in an union. The code using the data looks like this (line 2197):

  if (ans->status == adns_s_ok) {
    add_ipv4_name(almsg->ip4_addr, *ans->rrs.str);
  }

In my debugger *ans->rrs.str is an invalid pointer, but ans->rrs.bytes points to a valid string. The invalid pointer causes wireshark to crash.

I do not get this crash using 0.99.8pre1 from the wireshark website.

Any ideas?


This is very symptomatic of using an original adns dll compiled with MS VC 6 against a later C runtime. Are you sure you've compiled a new dll? Did you do a "setup" and get the old one back?

See http://bugs.wireshark.org/bugzilla/show_bug.cgi?id=2075 for more info. Note that I haven't responded to Steven's request. I'll try to do so tomorrow.

Graham Bloice