rt_proto_add(routes, rt);
}
}
- if (rap->lifetime == 0 || !rap->isreachable)
+ if (rap->lifetime == 0)
continue;
rt = inet6_makerouter(rap);
if (rt == NULL)
//
static void ipv6nd_handledata(void *);
-static void ipv6nd_startrs1(void *);
/*
* Android ships buggy ICMP6 filter headers.
rap->iface->name, rap->sfrom);
rap->isreachable = false;
}
-
- rt_build(rap->iface->ctx, AF_INET6);
- /* XXX Not really an RA */
- script_runreason(rap->iface, "ROUTERADVERT");
}
void
}
if (rapr == NULL)
- ipv6nd_startrs1(rap->iface);
+ ipv6nd_startrs(rap->iface);
}
const struct ipv6_addr *
if (efprintf(fp, "%s_now=%lld", ndprefix,
(long long)now.tv_sec) == -1)
return -1;
- if (efprintf(fp, "%s_isreachable=%s", ndprefix,
- rap->isreachable ? "true" : "false") == -1)
- return -1;
/* Zero our indexes */
for (j = 0, opt = rap->iface->ctx->nd_opts;