[Xorp-hackers] Problems with new versions of XORP

Rafael Paoliello Guimaraes rafael.guimaraes@ac.upc.edu
Mon, 17 Jan 2005 13:42:52 +0100


Hello,

I have migrated a routing protocol successfully to the XORP platform. 
However, now I am intending to use this routing protocol along with XORP 
and Click as the forwading engine. Well, I have downloaded a recent 
version of XORP (which supports click) and I have noticed some changes 
regarding adding new routes. Now, I am supposed to provide an additional 
argument for the XRL call, which is the a list of policies (XrlAtomList 
object). What does it represent?
Since my original protocol does not care about this, what I did was to 
send an "empty" object (created with default constructor), but now my 
protocol calls the XRL to add a route but does not receive a reply 
(through callback) from XORP. How can I do this in the right way?

What I did:


void
XrlTestNode::send_rib_route_change()
{
     bool success = true;
     XrlAtomList _xrl_atom_list;

     (...)  ---> Code to get next route from the list and
                 check if routing tables were registered

     //
     // Send the appropriate XRL
     //
     if (test_route.is_add_route()) {
         if (test_route.is_ipv4()) {
             if (test_route.is_interface_route()) {
                 success = _xrl_rib_client.send_add_interface_route4(
                     _rib_target.c_str(),
                     TestProtocolNode::protocol_name(),
                     true /* unicast */,
                     false /* multicast */,
                     test_route.network().get_ipv4net(),
                     test_route.nexthop().get_ipv4(),
                     test_route.ifname(),
                     test_route.vifname(),
                     test_route.metric(),
                     _xrl_atom_list,
                     callback(this, 
&XrlTestNode::send_rib_route_change_cb));
                 if (success)
                     return;
             } else {
(...)

Should this work? Why is this not working?

Cheers,

-- 

===========================================
  Rafael Paoliello Guimaraes
  PhD Student - Computer Networking Group
  Department of Computer Architecture (DAC)
  Polytechnic University of Catalonia (UPC)
  Phone: +34-934017187   Fax: +34-934017055
  URL: http://people.ac.upc.es/rpaoliel
===========================================