int ia_pd_iaid_index = 0;
static struct in6_addr ifid = IN6ADDR_ANY_INIT;
int sol_timeout = DHCPV6_SOL_MAX_RT;
+ int verbosity = 0;
bool help = false, daemonize = false;
int c;
unsigned int client_options = DHCPV6_CLIENT_FQDN | DHCPV6_ACCEPT_RECONFIGURE;
- while ((c = getopt(argc, argv, "S::N:V:P:FB:c:i:r:Ru:s:kt:m:hedp:fa")) != -1) {
+ while ((c = getopt(argc, argv, "S::N:V:P:FB:c:i:r:Ru:s:kt:m:hedp:fav")) != -1) {
switch (c) {
case 'S':
allow_slaac_only = (optarg) ? atoi(optarg) : -1;
client_options &= ~DHCPV6_ACCEPT_RECONFIGURE;
break;
+ case 'v':
+ ++verbosity;
+ break;
+
default:
help = true;
break;
}
openlog("odhcp6c", logopt, LOG_DAEMON);
+ if (!verbosity)
+ setlogmask(LOG_UPTO(LOG_WARNING));
+
const char *ifname = argv[optind];
if (help || !ifname)
break;
case DHCPV6_STATEFUL:
- script_call("bound");
bound = true;
+ script_call("bound");
syslog(LOG_NOTICE, "entering stateful-mode on %s", ifname);
while (!signal_usr2 && !signal_term) {
" -p <pidfile> Set pidfile (/var/run/odhcp6c.pid)\n"
" -d Daemonize\n"
" -e Write logmessages to stderr\n"
- //" -v Increase logging verbosity\n"
+ " -v Increase logging verbosity\n"
" -h Show this help\n\n";
write(STDERR_FILENO, buf, sizeof(buf));
return 1;
if (ra_link_up())
signal_usr2 = true;
- if (ra_updated && (bound || allow_slaac_only == 0))
+ if (ra_updated && (bound || allow_slaac_only >= 0))
script_call("ra-updated"); // Immediate process urgent events
- else if (ra_updated && !bound && allow_slaac_only > 0)
- script_delay_call("ra-updated", allow_slaac_only);
-
}
return signal_usr1 || signal_usr2 || signal_term;