Hi, I modified AODV protocol and run simulations. And I get a segmentation fault . Priqueue::filter() gets called in fpaodv::rt_ll_failed(Packet*) which is the same as aodv::rt_ll_failed(); FP_AODV is the modified AODV protocol.
Invalid read of size 4 ==12456== at 0x8299131: PriQueue::filter(int) (in /usr/local/bin/ns) ==12456== by 0x82C4FE1: FP_AODV::rt_ll_failed(Packet*) (in /usr/local/bin/ns) ==12456== by 0x82C4DC8: fp_aodv_rt_failed_callback(Packet*, void*) (in /usr/local/bin/ns) ==12456== by 0x8278B25: Mac802_11::RetransmitDATA() (in /usr/local/bin/ns) ==12456== by 0x8277575: Mac802_11::send_timer() (in /usr/local/bin/ns) ==12456== by 0x82771B8: Mac802_11::sendHandler() (in /usr/local/bin/ns) ==12456== by 0x829F187: TxTimer::handle(Event*) (in /usr/local/bin/ns) ==12456== by 0x81C18BF: Scheduler::dispatch(Event*, double) (in /usr/local/bin/ns) ==12456== by 0x81C17F3: Scheduler::run() (in /usr/local/bin/ns) ==12456== by 0x81C19A0: Scheduler::command(int, char const* const*) (in /usr/local/bin/ns) ==12456== by 0x83BC345: TclClass::dispatch_cmd(void*, Tcl_Interp*, int, char const**) (in /usr/local/bin/ns) ==12456== by 0x83BFF32: OTclDispatch (otcl.c:434) ==12456== Address 0x84 is not stack'd, malloc'd or (recently) free'd ==12456== Then I do the change what http://mailman.isi.edu/pipermail/ns-users/2005-April/048686.html was told, but it doesn't work. So is there some bugs in my code??? Your help is appreciated!!! May U Happy Song, Master student. May U Happy
