if (help || !ifname)
return usage();
- if ((urandom_fd = open("/dev/urandom", O_CLOEXEC | O_RDONLY)) < 0 ||
- init_dhcpv6(ifname, request_pd) || ra_init(ifname) ||
- script_init(script, ifname)) {
- syslog(LOG_ERR, "failed to initialize: %s", strerror(errno));
- return 3;
- }
-
signal(SIGIO, sighandler);
signal(SIGHUP, sighandler);
signal(SIGINT, sighandler);
signal(SIGUSR1, sighandler);
signal(SIGUSR2, sighandler);
+ if ((urandom_fd = open("/dev/urandom", O_CLOEXEC | O_RDONLY)) < 0 ||
+ init_dhcpv6(ifname, request_pd) || ra_init(ifname) ||
+ script_init(script, ifname)) {
+ syslog(LOG_ERR, "failed to initialize: %s", strerror(errno));
+ return 3;
+ }
+
if (daemonize) {
openlog("odhcp6c", LOG_PID, LOG_DAEMON); // Disable LOG_PERROR
if (daemon(0, 0)) {
if (x) {
x->valid = new->valid;
x->preferred = new->preferred;
+ x->prefix_class = new->prefix_class;
} else {
odhcp6c_add_state(state, new, sizeof(*new));
}