Add support for setting NLSR prefix costs via configuration file and nlsrc
This change alters the nlsr.conf 'advertising' format, as the previous
setup used unnecessary keys which made dynamically adjusting the
stateful conf file difficult.
Incorporates code written by Yanbiao Li.
Change-Id: I3ed5d0a564099be8cc1389ee6acc6f2d04cef889
diff --git a/src/update/command-processor.cpp b/src/update/command-processor.cpp
index f260bd6..95290d5 100644
--- a/src/update/command-processor.cpp
+++ b/src/update/command-processor.cpp
@@ -56,7 +56,7 @@
m_lsdb.buildAndInstallOwnNameLsa();
if (castParams.hasFlags() && castParams.getFlags() == PREFIX_FLAG) {
NLSR_LOG_INFO("Saving name to the configuration file ");
- auto [afterAdvertiseReturn, afterAdvertiseMessage] = afterAdvertise(castParams.getName());
+ auto [afterAdvertiseReturn, afterAdvertiseMessage] = afterAdvertise(castParams.getName(), castParamCost);
if (afterAdvertiseReturn) {
return done(ndn::nfd::ControlResponse(205, afterAdvertiseMessage).setBody(responseParams.wireEncode()));
}
@@ -71,7 +71,7 @@
if (castParams.hasFlags() && castParams.getFlags() == PREFIX_FLAG) {
// Save an already advertised prefix
NLSR_LOG_INFO("Saving an already advertised name: " << castParams.getName());
- auto [afterAdvertiseReturn, afterAdvertiseMessage] = afterAdvertise(castParams.getName());
+ auto [afterAdvertiseReturn, afterAdvertiseMessage] = afterAdvertise(castParams.getName(), castParamCost);
if (afterAdvertiseReturn) {
return done(ndn::nfd::ControlResponse(205, afterAdvertiseMessage).setBody(responseParams.wireEncode()));
}