The output of print *(tvbuff_t *)0x83fd418 print *(frame_data *)0xbfbff3c8 print *(struct pcap_pkthdr *)0x83f515c
from that particular crash (I'm doing it that way just in case the relevant variables are dead, as GDB would probably whine, or print crap, if that's the case) would be interesting, and might even give the relevant information (if, for example, the last of those reported that either "caplen" or "len" was 0, that would indicate that either libpcap or BPF was doing something Immensely Weird).
So here they are:
(gdb) print *(tvbuff_t *)0x83fd418
$1 = {type = TVBUFF_REAL_DATA, initialized = 1, usage_count = 1, ds_name = 0x83dd550 "Frame", used_in = 0x0,
tvbuffs = {subset = {tvb = 0x0, offset = 0, length = 0}, composite = {tvbs = 0x0, start_offsets = 0x0,
end_offsets = 0x0}}, real_data = 0x83f5df9 "LACK", length = 4294967295, reported_length = 838090752,
raw_offset = -1, free_cb = 0}
(gdb) print *(tvbuff_t *)0x83fd418
$2 = {type = TVBUFF_REAL_DATA, initialized = 1, usage_count = 1, ds_name = 0x83dd550 "Frame", used_in = 0x0,
tvbuffs = {subset = {tvb = 0x0, offset = 0, length = 0}, composite = {tvbs = 0x0, start_offsets = 0x0,
end_offsets = 0x0}}, real_data = 0x83f5df9 "LACK", length = 4294967295, reported_length = 838090752,
raw_offset = -1, free_cb = 0}
(gdb) print *(tvbuff_t *)0x83fd418
$3 = {type = TVBUFF_REAL_DATA, initialized = 1, usage_count = 1, ds_name = 0x83dd550 "Frame", used_in = 0x0,
tvbuffs = {subset = {tvb = 0x0, offset = 0, length = 0}, composite = {tvbs = 0x0, start_offsets = 0x0,
end_offsets = 0x0}}, real_data = 0x83f5df9 "LACK", length = 4294967295, reported_length = 838090752,
raw_offset = -1, free_cb = 0}
hope it helps :) marcin
-- Marcin Gryszkalis <[EMAIL PROTECTED]> or <[EMAIL PROTECTED]>
