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

Ethereal-dev: [Ethereal-dev] Access violation in packet-dcerpc.c

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

Date: Wed, 16 Jul 2003 13:38:28 +0200
Hi,
I get an accessviolation in the following location:

static int
dissect_deferred_pointers(packet_info *pinfo, tvbuff_t *tvb, int offset, 
char *drep)
{
        int found_new_pointer;
        dcerpc_info *di;
        int old_offset;

        di=pinfo->private_data;
        do{
                int i, len;

                found_new_pointer=0;
                len=g_slist_length(ndr_pointer_list);
                for(i=0;i<len;i++){
                        ndr_pointer_data_t *tnpd;
                        tnpd=g_slist_nth_data(ndr_pointer_list, i);
                        if(tnpd->fnct){
                                dcerpc_dissect_fnct_t *fnct;

                                found_new_pointer=1;
                                fnct=tnpd->fnct;
                                tnpd->fnct=NULL;
                                ndr_pointer_list_pos=i+1;
                                di->hf_index=tnpd->hf_index;
                                /* first a run to handle any conformant
                                   array headers */
                                di->conformant_run=1;
                                di->conformant_eaten=0;
                                old_offset = offset;
                                offset = (*(fnct))(tvb, offset, pinfo, 
NULL, drep);

The problem seems to be in calling the function in question. Unfortunately 
 I 
can't  see which function :-(

If necessary I can give more information, but I'm not sure which... I have 
the exception 
still in the debugger.


-- 
Andreas Sikkema
andreas.sikkema@xxxxxxxxxxx
"While you're waiting, read the free novel we sent you. 
 It's a Spanish story about a guy named `Manual'" - Dilbert