[Xorp-users] error with XRLs

Jeff Krasky kras0021@umn.edu
Mon, 07 Feb 2005 17:01:54 CST


> If there was a message like "Terminating module: <your module>"
> or "Killing module: <your module>", then the rtrmgr killed your
> process. Otherwise, your processed has terminated on its own, and
> the rtrmgr is reporting that.
> If you didn't see any of the above messages, was there a coredump of
> your process?

I saw the message "Module abnormally killed."  There was no coredump, but I
have tracked the problem down to the offending line:

In my class, I have a method called 'beac()' that takes zero arguments and
has a return type of bool.  I call this method once from main() and then at
the end of this method I try and set up a XorpTimer so that the method can
call ITSELF again.  The line at the end of 'beac()' looks like this:

_beac_timer = _eventloop.new_periodic(_period, callback(this,
&BGP_Beacon::beac));

When I comment this line out, no problem.  When this line executes, my
module is abnormally killed.

_beac_timer is a member variable of type XorpTimer.
_eventloop is a STATIC member variable of type EventLoop.
_period is a member variable of type int.

I believe that there is no problem with _eventloop itself, since before
calling new_periodic() I called _eventloop.timers_pending() to make sure
the variable was instantiated.

Any hints on why this line messes things up?

Thanks,



Jeff