// After we create a new Face, we need to set it up for use. This // function sets the controlling strategy, registers prefixes in // sync, broadcast, and LSA. void HelloProtocol::onRegistrationSuccess(const ndn::nfd::ControlParameters& commandSuccessResult, const ndn::Name& neighbor,const ndn::time::milliseconds& timeout) { Adjacent *adjacent = m_nlsr.getAdjacencyList().findAdjacent(neighbor); if (adjacent != 0) { adjacent->setFaceId(commandSuccessResult.getFaceId()); ndn::Name broadcastKeyPrefix = DEFAULT_BROADCAST_PREFIX; broadcastKeyPrefix.append("KEYS"); std::string faceUri = adjacent->getConnectingFaceUri(); double linkCost = adjacent->getLinkCost(); m_nlsr.getFib().registerPrefix(m_nlsr.getConfParameter().getChronosyncPrefix(), faceUri, linkCost, timeout, ndn::nfd::ROUTE_FLAG_CAPTURE, 0); m_nlsr.getFib().registerPrefix(m_nlsr.getConfParameter().getLsaPrefix(), faceUri, linkCost, timeout, ndn::nfd::ROUTE_FLAG_CAPTURE, 0); m_nlsr.getFib().registerPrefix(broadcastKeyPrefix, faceUri, linkCost, timeout, ndn::nfd::ROUTE_FLAG_CAPTURE, 0); // Sends a Hello Interest to determine status before the next scheduled. /* interest name: /<neighbor>/NLSR/INFO/<router> */ ndn::Name interestName(neighbor); interestName.append(NLSR_COMPONENT); interestName.append(INFO_COMPONENT); interestName.append(m_nlsr.getConfParameter().getRouterPrefix().wireEncode()); expressInterest(interestName, m_nlsr.getConfParameter().getInterestResendTime()); } }
void HelloProtocol::onRegistrationSuccess(const ndn::nfd::ControlParameters& commandSuccessResult, const ndn::Name& neighbor) { Adjacent *adjacent = m_nlsr.getAdjacencyList().findAdjacent(neighbor); if (adjacent != 0) { adjacent->setFaceId(commandSuccessResult.getFaceId()); /* interest name: /<neighbor>/NLSR/INFO/<router> */ ndn::Name interestName(neighbor); interestName.append(NLSR_COMPONENT); interestName.append(INFO_COMPONENT); interestName.append(m_nlsr.getConfParameter().getRouterPrefix().wireEncode()); expressInterest(interestName, m_nlsr.getConfParameter().getInterestResendTime()); } }