[Nfd-dev] How to send command interests from NFD to NLSR?

Nick Gordon nmgordon at memphis.edu
Tue Feb 21 15:33:39 PST 2017


Second part of my problem (figured I could make use of the lists for
once...)

I'm getting a very strange crash when I issue
"nfdc register -o 65 /ndn/endhost 259", NFD on that router crashes. I'm
doing this to simulate a successful propagation into the router. My
Readvertise module seems to be doing it's job, and then the last thing
the log indicates is getting executed is:

m_controller.start<ndn::nfd::RibRegisterCommand>(ControlParameters()
                              .setName(rr.getPrefix())
                              .setOrigin(ndn::nfd::ROUTE_ORIGIN_CLIENT),
    [=] (const ControlParameters& cp) { successCb(); },
    [=] (const ControlResponse& cr) { failureCb(cr.getText()); },
    ndn::nfd::CommandOptions().setPrefix("/localhost/nlsr"));

The aim of this is to send a RibRegisterCommand, registering the prefix
"/ndn/endhost" toward /localhost/nlsr. Then, because NFD has
"/localhost/nlsr" in its FIB, it should pass it off to NLSR, which
inserts it into the NPT and away we go.

I've currently instantiated the destination with the same controller
that the RibManager has. This controller's face is created with internal
NFD face. I *don't* think this is the correct approach, but I didn't
know exactly how to send something to NLSR from NFD.

The last 50 lines of the log are in this gist:
https://gist.github.com/gorgonical/219bfa6025a76ed98f11f9c5defa9d5d

It kind of looks to me like it's putting the data on the Face, which it
then receives from that Face, and we get into some kind of loop.

 -Nick


More information about the Nfd-dev mailing list