[Olsr-cvs] olsrd-current/src/cfgparser cfgfile_gen.c,1.8,1.9
Bernd Petrovitsch
(spam-protected)
Mon Oct 15 23:01:19 CEST 2007
Update of /cvsroot/olsrd/olsrd-current/src/cfgparser
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv24635/src/cfgparser
Modified Files:
cfgfile_gen.c
Log Message:
* made a statement-like macro out of WRITE_BUF
Index: cfgfile_gen.c
===================================================================
RCS file: /cvsroot/olsrd/olsrd-current/src/cfgparser/cfgfile_gen.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** cfgfile_gen.c 13 Sep 2007 16:08:13 -0000 1.8
--- cfgfile_gen.c 15 Oct 2007 21:01:17 -0000 1.9
***************
*** 362,371 ****
#define MAX_LINESIZE 250
! #define WRITE_TO_BUF(s,args...) \
! { \
! if((bufsize - size) < MAX_LINESIZE) \
! return -1; \
! size += snprintf(&buf[size], MAX_LINESIZE, s, ##args);\
! }
int
--- 362,372 ----
#define MAX_LINESIZE 250
! #define WRITE_TO_BUF(fmt, args...) \
! do { \
! if((bufsize - size) < MAX_LINESIZE) { \
! return -1; \
! } \
! size += snprintf(&buf[size], MAX_LINESIZE, fmt, ##args); \
! } while (0)
int
***************
*** 394,462 ****
}
! WRITE_TO_BUF("#\n# Configuration file for olsr.org olsrd\n# automatically generated by olsrd-cnf %s\n#\n\n\n", PARSER_VERSION)
/* Debug level */
! WRITE_TO_BUF("# Debug level(0-9)\n# If set to 0 the daemon runs in the background\n\nDebugLevel\t%d\n\n", cnf->debug_level)
/* IP version */
if(cnf->ip_version == AF_INET6)
! WRITE_TO_BUF("# IP version to use (4 or 6)\n\nIpVersion\t6\n\n")
else
! WRITE_TO_BUF("# IP version to use (4 or 6)\n\nIpVersion\t4\n\n")
/* HNA IPv4 */
! WRITE_TO_BUF("# HNA IPv4 routes\n# syntax: netaddr netmask\n\nHna4\n{\n")
while(h4)
{
in4.s_addr = h4->net.v4;
! WRITE_TO_BUF(" %s ", inet_ntoa(in4))
in4.s_addr = h4->netmask.v4;
! WRITE_TO_BUF("%s\n", inet_ntoa(in4))
h4 = h4->next;
}
! WRITE_TO_BUF("}\n\n")
/* HNA IPv6 */
! WRITE_TO_BUF("# HNA IPv6 routes\n# syntax: netaddr prefix\n\nHna6\n{\n")
while(h6)
{
! WRITE_TO_BUF(" %s/%d\n", (char *)inet_ntop(AF_INET6, &h6->net.v6, ipv6_buf, sizeof(ipv6_buf)), h6->prefix_len)
h6 = h6->next;
}
! WRITE_TO_BUF("}\n\n")
/* No interfaces */
! WRITE_TO_BUF("# Should olsrd keep on running even if there are\n# no interfaces available? This is a good idea\n# for a PCMCIA/USB hotswap environment.\n# \"yes\" OR \"no\"\n\nAllowNoInt\t")
if(cnf->allow_no_interfaces)
! WRITE_TO_BUF("yes\n\n")
else
! WRITE_TO_BUF("no\n\n")
/* TOS */
! WRITE_TO_BUF("# TOS(type of service) to use. Default is 16\n\n")
! WRITE_TO_BUF("TosValue\t%d\n\n", cnf->tos)
/* RtTable */
! WRITE_TO_BUF("# Policy Routing Tableto use. Default is 254\n\n")
! WRITE_TO_BUF("RtTable\t%d\n\n", cnf->rttable)
/* Willingness */
! WRITE_TO_BUF("# The fixed willingness to use(0-7)\n# If not set willingness will be calculated\n# dynammically based on battery/power status\n\n")
if(cnf->willingness_auto)
! WRITE_TO_BUF("#Willingness\t4\n\n")
else
! WRITE_TO_BUF("Willingness%d\n\n", cnf->willingness)
/* IPC */
! WRITE_TO_BUF("# Allow processes like the GUI front-end\n# to connect to the daemon.\n\n")
! WRITE_TO_BUF("IpcConnect\n{\n")
! WRITE_TO_BUF(" MaxConnections %d\n", cnf->ipc_connections)
while(ih)
{
in4.s_addr = ih->host.v4;
! WRITE_TO_BUF(" Host %s\n", inet_ntoa(in4))
ih = ih->next;
}
--- 395,463 ----
}
! WRITE_TO_BUF("#\n# Configuration file for olsr.org olsrd\n# automatically generated by olsrd-cnf %s\n#\n\n\n", PARSER_VERSION);
/* Debug level */
! WRITE_TO_BUF("# Debug level(0-9)\n# If set to 0 the daemon runs in the background\n\nDebugLevel\t%d\n\n", cnf->debug_level);
/* IP version */
if(cnf->ip_version == AF_INET6)
! WRITE_TO_BUF("# IP version to use (4 or 6)\n\nIpVersion\t6\n\n");
else
! WRITE_TO_BUF("# IP version to use (4 or 6)\n\nIpVersion\t4\n\n");
/* HNA IPv4 */
! WRITE_TO_BUF("# HNA IPv4 routes\n# syntax: netaddr netmask\n\nHna4\n{\n");
while(h4)
{
in4.s_addr = h4->net.v4;
! WRITE_TO_BUF(" %s ", inet_ntoa(in4));
in4.s_addr = h4->netmask.v4;
! WRITE_TO_BUF("%s\n", inet_ntoa(in4));
h4 = h4->next;
}
! WRITE_TO_BUF("}\n\n");
/* HNA IPv6 */
! WRITE_TO_BUF("# HNA IPv6 routes\n# syntax: netaddr prefix\n\nHna6\n{\n");
while(h6)
{
! WRITE_TO_BUF(" %s/%d\n", (char *)inet_ntop(AF_INET6, &h6->net.v6, ipv6_buf, sizeof(ipv6_buf)), h6->prefix_len);
h6 = h6->next;
}
! WRITE_TO_BUF("}\n\n");
/* No interfaces */
! WRITE_TO_BUF("# Should olsrd keep on running even if there are\n# no interfaces available? This is a good idea\n# for a PCMCIA/USB hotswap environment.\n# \"yes\" OR \"no\"\n\nAllowNoInt\t");
if(cnf->allow_no_interfaces)
! WRITE_TO_BUF("yes\n\n");
else
! WRITE_TO_BUF("no\n\n");
/* TOS */
! WRITE_TO_BUF("# TOS(type of service) to use. Default is 16\n\n");
! WRITE_TO_BUF("TosValue\t%d\n\n", cnf->tos);
/* RtTable */
! WRITE_TO_BUF("# Policy Routing Tableto use. Default is 254\n\n");
! WRITE_TO_BUF("RtTable\t%d\n\n", cnf->rttable);
/* Willingness */
! WRITE_TO_BUF("# The fixed willingness to use(0-7)\n# If not set willingness will be calculated\n# dynammically based on battery/power status\n\n");
if(cnf->willingness_auto)
! WRITE_TO_BUF("#Willingness\t4\n\n");
else
! WRITE_TO_BUF("Willingness%d\n\n", cnf->willingness);
/* IPC */
! WRITE_TO_BUF("# Allow processes like the GUI front-end\n# to connect to the daemon.\n\n");
! WRITE_TO_BUF("IpcConnect\n{\n");
! WRITE_TO_BUF(" MaxConnections %d\n", cnf->ipc_connections);
while(ih)
{
in4.s_addr = ih->host.v4;
! WRITE_TO_BUF(" Host %s\n", inet_ntoa(in4));
ih = ih->next;
}
***************
*** 464,538 ****
{
in4.s_addr = ie->net.v4;
! WRITE_TO_BUF(" Net %s ", inet_ntoa(in4))
in4.s_addr = ie->mask.v4;
! WRITE_TO_BUF("%s\n", inet_ntoa(in4))
ie = ie->next;
}
! WRITE_TO_BUF("}\n\n")
/* Hysteresis */
! WRITE_TO_BUF("# Hysteresis adds more robustness to the\n# link sensing.\n# Used by default. 'yes' or 'no'\n\n")
if(cnf->use_hysteresis)
{
! WRITE_TO_BUF("UseHysteresis\tyes\n\n")
! WRITE_TO_BUF("# Hysteresis parameters\n# Do not alter these unless you know \n# what you are doing!\n# Set to auto by default. Allowed\n# values are floating point values\n# in the interval 0,1\n# THR_LOW must always be lower than\n# THR_HIGH!!\n\n")
! WRITE_TO_BUF("HystScaling\t%0.2f\n", cnf->hysteresis_param.scaling)
! WRITE_TO_BUF("HystThrHigh\t%0.2f\n", cnf->hysteresis_param.thr_high)
! WRITE_TO_BUF("HystThrLow\t%0.2f\n\n", cnf->hysteresis_param.thr_low)
}
else
{
! WRITE_TO_BUF("UseHysteresis\tno\n\n")
! WRITE_TO_BUF("# Hysteresis parameters\n# Do not alter these unless you know \n# what you are doing!\n# Set to auto by default. Allowed\n# values are floating point values\n# in the interval 0,1\n# THR_LOW must always be lower than\n# THR_HIGH!!\n\n")
! WRITE_TO_BUF("#HystScaling\t%0.2f\n", cnf->hysteresis_param.scaling)
! WRITE_TO_BUF("#HystThrHigh\t%0.2f\n", cnf->hysteresis_param.thr_high)
! WRITE_TO_BUF("#HystThrLow\t%0.2f\n\n", cnf->hysteresis_param.thr_low)
}
/* Pollrate */
! WRITE_TO_BUF("# Polling rate in seconds(float).\n# Auto uses default value 0.05 sec\n\n")
! WRITE_TO_BUF("Pollrate\t%0.2f\n", cnf->pollrate)
/* TC redundancy */
! WRITE_TO_BUF("# TC redundancy\n# Specifies how much neighbor info should\n# be sent in TC messages\n# Possible values are:\n# 0 - only send MPR selectors\n# 1 - send MPR selectors and MPRs\n# 2 - send all neighbors\n#\n# defaults to 0\n\n")
! WRITE_TO_BUF("TcRedundancy\t%d\n\n", cnf->tc_redundancy)
/* MPR coverage */
! WRITE_TO_BUF("# MPR coverage\n# Specifies how many MPRs a node should\n# try select to reach every 2 hop neighbor\n# Can be set to any integer >0\n# defaults to 1\n\n")
! WRITE_TO_BUF("MprCoverage\t%d\n\n", cnf->mpr_coverage)
! WRITE_TO_BUF("# Link quality level\n# 0 = do not use link quality\n# 1 = use link quality for MPR selection\n# 2 = use link quality for MPR selection and routing\n\n")
! WRITE_TO_BUF("LinkQualityLevel\t%d\n\n", cnf->lq_level)
! WRITE_TO_BUF("# Link quality window size\n\n")
! WRITE_TO_BUF("LinkQualityWinSize\t%d\n\n", cnf->lq_wsize)
! WRITE_TO_BUF("# Clear screen when printing debug output?\n\n")
! WRITE_TO_BUF("ClearScreen\t%s\n\n", cnf->clear_screen ? "yes" : "no")
/* Plugins */
! WRITE_TO_BUF("# Olsrd plugins to load\n# This must be the absolute path to the file\n# or the loader will use the following scheme:\n")
! WRITE_TO_BUF("# - Try the paths in the LD_LIBRARY_PATH \n# environment variable.\n# - The list of libraries cached in /etc/ld.so.cache\n# - /lib, followed by /usr/lib\n\n")
if(pe)
{
while(pe)
{
! WRITE_TO_BUF("LoadPlugin \"%s\"\n{\n", pe->name)
pp = pe->params;
while(pp)
{
! WRITE_TO_BUF(" PlParam \"%s\" \"%s\"\n", pp->key, pp->value)
pp = pp->next;
}
! WRITE_TO_BUF("}\n")
pe = pe->next;
}
}
! WRITE_TO_BUF("\n")
--- 465,539 ----
{
in4.s_addr = ie->net.v4;
! WRITE_TO_BUF(" Net %s ", inet_ntoa(in4));
in4.s_addr = ie->mask.v4;
! WRITE_TO_BUF("%s\n", inet_ntoa(in4));
ie = ie->next;
}
! WRITE_TO_BUF("}\n\n");
/* Hysteresis */
! WRITE_TO_BUF("# Hysteresis adds more robustness to the\n# link sensing.\n# Used by default. 'yes' or 'no'\n\n");
if(cnf->use_hysteresis)
{
! WRITE_TO_BUF("UseHysteresis\tyes\n\n");
! WRITE_TO_BUF("# Hysteresis parameters\n# Do not alter these unless you know \n# what you are doing!\n# Set to auto by default. Allowed\n# values are floating point values\n# in the interval 0,1\n# THR_LOW must always be lower than\n# THR_HIGH!!\n\n");
! WRITE_TO_BUF("HystScaling\t%0.2f\n", cnf->hysteresis_param.scaling);
! WRITE_TO_BUF("HystThrHigh\t%0.2f\n", cnf->hysteresis_param.thr_high);
! WRITE_TO_BUF("HystThrLow\t%0.2f\n\n", cnf->hysteresis_param.thr_low);
}
else
{
! WRITE_TO_BUF("UseHysteresis\tno\n\n");
! WRITE_TO_BUF("# Hysteresis parameters\n# Do not alter these unless you know \n# what you are doing!\n# Set to auto by default. Allowed\n# values are floating point values\n# in the interval 0,1\n# THR_LOW must always be lower than\n# THR_HIGH!!\n\n");
! WRITE_TO_BUF("#HystScaling\t%0.2f\n", cnf->hysteresis_param.scaling);
! WRITE_TO_BUF("#HystThrHigh\t%0.2f\n", cnf->hysteresis_param.thr_high);
! WRITE_TO_BUF("#HystThrLow\t%0.2f\n\n", cnf->hysteresis_param.thr_low);
}
/* Pollrate */
! WRITE_TO_BUF("# Polling rate in seconds(float).\n# Auto uses default value 0.05 sec\n\n");
! WRITE_TO_BUF("Pollrate\t%0.2f\n", cnf->pollrate);
/* TC redundancy */
! WRITE_TO_BUF("# TC redundancy\n# Specifies how much neighbor info should\n# be sent in TC messages\n# Possible values are:\n# 0 - only send MPR selectors\n# 1 - send MPR selectors and MPRs\n# 2 - send all neighbors\n#\n# defaults to 0\n\n");
! WRITE_TO_BUF("TcRedundancy\t%d\n\n", cnf->tc_redundancy);
/* MPR coverage */
! WRITE_TO_BUF("# MPR coverage\n# Specifies how many MPRs a node should\n# try select to reach every 2 hop neighbor\n# Can be set to any integer >0\n# defaults to 1\n\n");
! WRITE_TO_BUF("MprCoverage\t%d\n\n", cnf->mpr_coverage);
! WRITE_TO_BUF("# Link quality level\n# 0 = do not use link quality\n# 1 = use link quality for MPR selection\n# 2 = use link quality for MPR selection and routing\n\n");
! WRITE_TO_BUF("LinkQualityLevel\t%d\n\n", cnf->lq_level);
! WRITE_TO_BUF("# Link quality window size\n\n");
! WRITE_TO_BUF("LinkQualityWinSize\t%d\n\n", cnf->lq_wsize);
! WRITE_TO_BUF("# Clear screen when printing debug output?\n\n");
! WRITE_TO_BUF("ClearScreen\t%s\n\n", cnf->clear_screen ? "yes" : "no");
/* Plugins */
! WRITE_TO_BUF("# Olsrd plugins to load\n# This must be the absolute path to the file\n# or the loader will use the following scheme:\n");
! WRITE_TO_BUF("# - Try the paths in the LD_LIBRARY_PATH \n# environment variable.\n# - The list of libraries cached in /etc/ld.so.cache\n# - /lib, followed by /usr/lib\n\n");
if(pe)
{
while(pe)
{
! WRITE_TO_BUF("LoadPlugin \"%s\"\n{\n", pe->name);
pp = pe->params;
while(pp)
{
! WRITE_TO_BUF(" PlParam \"%s\" \"%s\"\n", pp->key, pp->value);
pp = pp->next;
}
! WRITE_TO_BUF("}\n");
pe = pe->next;
}
}
! WRITE_TO_BUF("\n");
***************
*** 540,545 ****
/* Interfaces */
! WRITE_TO_BUF("# Interfaces\n# Multiple interfaces with the same configuration\n")
! WRITE_TO_BUF("# can shar the same config block. Just list the\n# interfaces(e.g. Interface \"eth0\" \"eth2\"\n\n")
/* Interfaces */
if(in)
--- 541,546 ----
/* Interfaces */
! WRITE_TO_BUF("# Interfaces\n# Multiple interfaces with the same configuration\n");
! WRITE_TO_BUF("# can shar the same config block. Just list the\n# interfaces(e.g. Interface \"eth0\" \"eth2\"\n\n");
/* Interfaces */
if(in)
***************
*** 548,555 ****
while(in)
{
! WRITE_TO_BUF("Interface \"%s\"\n{\n", in->name)
if(first)
! WRITE_TO_BUF(" # IPv4 broadcast address to use. The\n # one usefull example would be 255.255.255.255\n # If not defined the broadcastaddress\n # every card is configured with is used\n\n")
--- 549,556 ----
while(in)
{
! WRITE_TO_BUF("Interface \"%s\"\n{\n", in->name);
if(first)
! WRITE_TO_BUF(" # IPv4 broadcast address to use. The\n # one usefull example would be 255.255.255.255\n # If not defined the broadcastaddress\n # every card is configured with is used\n\n");
***************
*** 557,625 ****
{
in4.s_addr = in->cnf->ipv4_broadcast.v4;
! WRITE_TO_BUF(" Ip4Broadcast\t %s\n", inet_ntoa(in4))
}
else
{
if(first)
! WRITE_TO_BUF(" #Ip4Broadcast\t255.255.255.255\n")
}
! if(first) WRITE_TO_BUF("\n")
if(first)
! WRITE_TO_BUF(" # IPv6 address scope to use.\n # Must be 'site-local' or 'global'\n\n")
if(in->cnf->ipv6_addrtype)
! WRITE_TO_BUF(" Ip6AddrType \tsite-local\n")
else
! WRITE_TO_BUF(" Ip6AddrType \tglobal\n")
! if(first) WRITE_TO_BUF("\n")
if(first)
! WRITE_TO_BUF(" # IPv6 multicast address to use when\n # using site-local addresses.\n # If not defined, ff05::15 is used\n")
! WRITE_TO_BUF(" Ip6MulticastSite\t%s\n", (char *)inet_ntop(AF_INET6, &in->cnf->ipv6_multi_site.v6, ipv6_buf, sizeof(ipv6_buf)))
! if(first) WRITE_TO_BUF("\n")
if(first)
! WRITE_TO_BUF(" # IPv6 multicast address to use when\n # using global addresses\n # If not defined, ff0e::1 is used\n")
! WRITE_TO_BUF(" Ip6MulticastGlobal\t%s\n", (char *)inet_ntop(AF_INET6, &in->cnf->ipv6_multi_glbl.v6, ipv6_buf, sizeof(ipv6_buf)))
! if(first) WRITE_TO_BUF("\n")
if(first)
! WRITE_TO_BUF(" # Emission and validity intervals.\n # If not defined, RFC proposed values will\n # in most cases be used.\n\n")
if(in->cnf->hello_params.emission_interval != HELLO_INTERVAL)
! WRITE_TO_BUF(" HelloInterval\t%0.2f\n", in->cnf->hello_params.emission_interval)
else if(first)
! WRITE_TO_BUF(" #HelloInterval\t%0.2f\n", in->cnf->hello_params.emission_interval)
if(in->cnf->hello_params.validity_time != NEIGHB_HOLD_TIME)
! WRITE_TO_BUF(" HelloValidityTime\t%0.2f\n", in->cnf->hello_params.validity_time)
else if(first)
! WRITE_TO_BUF(" #HelloValidityTime\t%0.2f\n", in->cnf->hello_params.validity_time)
if(in->cnf->tc_params.emission_interval != TC_INTERVAL)
! WRITE_TO_BUF(" TcInterval\t\t%0.2f\n", in->cnf->tc_params.emission_interval)
else if(first)
! WRITE_TO_BUF(" #TcInterval\t\t%0.2f\n", in->cnf->tc_params.emission_interval)
if(in->cnf->tc_params.validity_time != TOP_HOLD_TIME)
! WRITE_TO_BUF(" TcValidityTime\t%0.2f\n", in->cnf->tc_params.validity_time)
else if(first)
! WRITE_TO_BUF(" #TcValidityTime\t%0.2f\n", in->cnf->tc_params.validity_time)
if(in->cnf->mid_params.emission_interval != MID_INTERVAL)
! WRITE_TO_BUF(" MidInterval\t\t%0.2f\n", in->cnf->mid_params.emission_interval)
else if(first)
! WRITE_TO_BUF(" #MidInterval\t%0.2f\n", in->cnf->mid_params.emission_interval)
if(in->cnf->mid_params.validity_time != MID_HOLD_TIME)
! WRITE_TO_BUF(" MidValidityTime\t%0.2f\n", in->cnf->mid_params.validity_time)
else if(first)
! WRITE_TO_BUF(" #MidValidityTime\t%0.2f\n", in->cnf->mid_params.validity_time)
if(in->cnf->hna_params.emission_interval != HNA_INTERVAL)
! WRITE_TO_BUF(" HnaInterval\t\t%0.2f\n", in->cnf->hna_params.emission_interval)
else if(first)
! WRITE_TO_BUF(" #HnaInterval\t%0.2f\n", in->cnf->hna_params.emission_interval)
if(in->cnf->hna_params.validity_time != HNA_HOLD_TIME)
! WRITE_TO_BUF(" HnaValidityTime\t%0.2f\n", in->cnf->hna_params.validity_time)
else if(first)
! WRITE_TO_BUF(" #HnaValidityTime\t%0.2f\n", in->cnf->hna_params.validity_time)
mult = in->cnf->lq_mult;
--- 558,626 ----
{
in4.s_addr = in->cnf->ipv4_broadcast.v4;
! WRITE_TO_BUF(" Ip4Broadcast\t %s\n", inet_ntoa(in4));
}
else
{
if(first)
! WRITE_TO_BUF(" #Ip4Broadcast\t255.255.255.255\n");
}
! if(first) WRITE_TO_BUF("\n");
if(first)
! WRITE_TO_BUF(" # IPv6 address scope to use.\n # Must be 'site-local' or 'global'\n\n");
if(in->cnf->ipv6_addrtype)
! WRITE_TO_BUF(" Ip6AddrType \tsite-local\n");
else
! WRITE_TO_BUF(" Ip6AddrType \tglobal\n");
! if(first) WRITE_TO_BUF("\n");
if(first)
! WRITE_TO_BUF(" # IPv6 multicast address to use when\n # using site-local addresses.\n # If not defined, ff05::15 is used\n");
! WRITE_TO_BUF(" Ip6MulticastSite\t%s\n", (char *)inet_ntop(AF_INET6, &in->cnf->ipv6_multi_site.v6, ipv6_buf, sizeof(ipv6_buf)));
! if(first) WRITE_TO_BUF("\n");
if(first)
! WRITE_TO_BUF(" # IPv6 multicast address to use when\n # using global addresses\n # If not defined, ff0e::1 is used\n");
! WRITE_TO_BUF(" Ip6MulticastGlobal\t%s\n", (char *)inet_ntop(AF_INET6, &in->cnf->ipv6_multi_glbl.v6, ipv6_buf, sizeof(ipv6_buf)));
! if(first) WRITE_TO_BUF("\n");
if(first)
! WRITE_TO_BUF(" # Emission and validity intervals.\n # If not defined, RFC proposed values will\n # in most cases be used.\n\n");
if(in->cnf->hello_params.emission_interval != HELLO_INTERVAL)
! WRITE_TO_BUF(" HelloInterval\t%0.2f\n", in->cnf->hello_params.emission_interval);
else if(first)
! WRITE_TO_BUF(" #HelloInterval\t%0.2f\n", in->cnf->hello_params.emission_interval);
if(in->cnf->hello_params.validity_time != NEIGHB_HOLD_TIME)
! WRITE_TO_BUF(" HelloValidityTime\t%0.2f\n", in->cnf->hello_params.validity_time);
else if(first)
! WRITE_TO_BUF(" #HelloValidityTime\t%0.2f\n", in->cnf->hello_params.validity_time);
if(in->cnf->tc_params.emission_interval != TC_INTERVAL)
! WRITE_TO_BUF(" TcInterval\t\t%0.2f\n", in->cnf->tc_params.emission_interval);
else if(first)
! WRITE_TO_BUF(" #TcInterval\t\t%0.2f\n", in->cnf->tc_params.emission_interval);
if(in->cnf->tc_params.validity_time != TOP_HOLD_TIME)
! WRITE_TO_BUF(" TcValidityTime\t%0.2f\n", in->cnf->tc_params.validity_time);
else if(first)
! WRITE_TO_BUF(" #TcValidityTime\t%0.2f\n", in->cnf->tc_params.validity_time);
if(in->cnf->mid_params.emission_interval != MID_INTERVAL)
! WRITE_TO_BUF(" MidInterval\t\t%0.2f\n", in->cnf->mid_params.emission_interval);
else if(first)
! WRITE_TO_BUF(" #MidInterval\t%0.2f\n", in->cnf->mid_params.emission_interval);
if(in->cnf->mid_params.validity_time != MID_HOLD_TIME)
! WRITE_TO_BUF(" MidValidityTime\t%0.2f\n", in->cnf->mid_params.validity_time);
else if(first)
! WRITE_TO_BUF(" #MidValidityTime\t%0.2f\n", in->cnf->mid_params.validity_time);
if(in->cnf->hna_params.emission_interval != HNA_INTERVAL)
! WRITE_TO_BUF(" HnaInterval\t\t%0.2f\n", in->cnf->hna_params.emission_interval);
else if(first)
! WRITE_TO_BUF(" #HnaInterval\t%0.2f\n", in->cnf->hna_params.emission_interval);
if(in->cnf->hna_params.validity_time != HNA_HOLD_TIME)
! WRITE_TO_BUF(" HnaValidityTime\t%0.2f\n", in->cnf->hna_params.validity_time);
else if(first)
! WRITE_TO_BUF(" #HnaValidityTime\t%0.2f\n", in->cnf->hna_params.validity_time);
mult = in->cnf->lq_mult;
***************
*** 628,632 ****
{
if(first)
! WRITE_TO_BUF(" #LinkQualityMult\tdefault 1.0\n")
}
else
--- 629,633 ----
{
if(first)
! WRITE_TO_BUF(" #LinkQualityMult\tdefault 1.0\n");
}
else
***************
*** 637,642 ****
sizeof (ipv6_buf));
! WRITE_TO_BUF(" LinkQualityMult\t%s %0.2f\n",
! ipv6_buf, mult->val)
mult = mult->next;
--- 638,642 ----
sizeof (ipv6_buf));
! WRITE_TO_BUF(" LinkQualityMult\t%s %0.2f\n", ipv6_buf, mult->val);
mult = mult->next;
***************
*** 646,673 ****
if(first)
{
! WRITE_TO_BUF(" # When multiple links exist between hosts\n");
! WRITE_TO_BUF(" # the weight of interface is used to determine\n");
! WRITE_TO_BUF(" # the link to use. Normally the weight is\n")
! WRITE_TO_BUF(" # automatically calculated by olsrd based\n");
! WRITE_TO_BUF(" # on the characteristics of the interface,\n");
! WRITE_TO_BUF(" # but here you can specify a fixed value.\n");
! WRITE_TO_BUF(" # Olsrd will choose links with the lowest value.\n")
! WRITE_TO_BUF(" # Note:\n");
! WRITE_TO_BUF(" # Interface weight is used only when LinkQualityLevel is 0.\n");
! WRITE_TO_BUF(" # For any other value of LinkQualityLevel, the interface ETX\n");
! WRITE_TO_BUF(" # value is used instead.\n\n");
}
if(in->cnf->weight.fixed)
{
! WRITE_TO_BUF(" Weight\t %d\n\n", in->cnf->weight.value)
}
else
{
if(first)
! WRITE_TO_BUF(" #Weight\t 0\n\n")
}
! WRITE_TO_BUF("}\n\n")
in = in->next;
first = OLSR_FALSE;
--- 646,673 ----
if(first)
{
! WRITE_TO_BUF(" # When multiple links exist between hosts\n");;
! WRITE_TO_BUF(" # the weight of interface is used to determine\n");;
! WRITE_TO_BUF(" # the link to use. Normally the weight is\n");
! WRITE_TO_BUF(" # automatically calculated by olsrd based\n");;
! WRITE_TO_BUF(" # on the characteristics of the interface,\n");;
! WRITE_TO_BUF(" # but here you can specify a fixed value.\n");;
! WRITE_TO_BUF(" # Olsrd will choose links with the lowest value.\n");
! WRITE_TO_BUF(" # Note:\n");;
! WRITE_TO_BUF(" # Interface weight is used only when LinkQualityLevel is 0.\n");;
! WRITE_TO_BUF(" # For any other value of LinkQualityLevel, the interface ETX\n");;
! WRITE_TO_BUF(" # value is used instead.\n\n");;
}
if(in->cnf->weight.fixed)
{
! WRITE_TO_BUF(" Weight\t %d\n\n", in->cnf->weight.value);
}
else
{
if(first)
! WRITE_TO_BUF(" #Weight\t 0\n\n");
}
! WRITE_TO_BUF("}\n\n");
in = in->next;
first = OLSR_FALSE;
***************
*** 677,681 ****
! WRITE_TO_BUF("\n# END AUTOGENERATED CONFIG\n")
return size;
--- 677,681 ----
! WRITE_TO_BUF("\n# END AUTOGENERATED CONFIG\n");
return size;
More information about the Olsr-cvs
mailing list