summaryrefslogtreecommitdiff
path: root/netconf-service
diff options
context:
space:
mode:
authorAdam Ierymenko <adam.ierymenko@gmail.com>2013-09-30 13:51:56 -0400
committerAdam Ierymenko <adam.ierymenko@gmail.com>2013-09-30 13:51:56 -0400
commit9db7939d383f2d048d48a4d78e4834fc5d2dbafe (patch)
treeba02e4b773704cd095da0bb47727ccdb7301c901 /netconf-service
parent4ecb9369b56c7aa507c9c0c9fa8381ec6772a0ea (diff)
downloadinfinitytier-9db7939d383f2d048d48a4d78e4834fc5d2dbafe.tar.gz
infinitytier-9db7939d383f2d048d48a4d78e4834fc5d2dbafe.zip
Make new multicast depth and prefix bits parameters configurable.
Diffstat (limited to 'netconf-service')
-rw-r--r--netconf-service/netconf.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/netconf-service/netconf.cpp b/netconf-service/netconf.cpp
index eb902cba..2d1fa016 100644
--- a/netconf-service/netconf.cpp
+++ b/netconf-service/netconf.cpp
@@ -204,15 +204,19 @@ int main(int argc,char **argv)
}
bool isOpen = false;
+ unsigned int mpb = 0;
+ unsigned int md = 0;
std::string name,desc;
{
Query q = dbCon->query();
- q << "SELECT name,`desc`,isOpen FROM Network WHERE id = " << nwid;
+ q << "SELECT name,`desc`,isOpen,multicastPrefixBits,multicastDepth FROM Network WHERE id = " << nwid;
StoreQueryResult rs = q.store();
if (rs.num_rows() > 0) {
name = rs[0]["name"].c_str();
desc = rs[0]["desc"].c_str();
isOpen = ((int)rs[0]["isOpen"] > 0);
+ mpb = (unsigned int)rs[0]["multicastPrefixBits"];
+ md = (unsigned int)rs[0]["multicastDepth"];
} else {
Dictionary response;
response["peer"] = peerIdentity.address().toString();
@@ -279,6 +283,14 @@ int main(int argc,char **argv)
sprintf(buf,"%llx",(unsigned long long)Utils::now());
netconf["ts"] = buf;
netconf["peer"] = peerIdentity.address().toString();
+ if (mpb) {
+ sprintf(buf,"%x",mpb);
+ netconf["mpb"] = buf;
+ }
+ if (md) {
+ sprintf(buf,"%x",md);
+ netconf["md"] = buf;
+ }
if (!isOpen) {
// TODO: handle closed networks, look up private membership,