return 0;
}
-int dhcpv6_setup_ia_interface(struct interface *iface, bool enable)
+int dhcpv6_ia_setup_interface(struct interface *iface, bool enable)
{
if (!enable && iface->ia_assignments.next) {
struct dhcp_assignment *c;
return odhcpd_send(iface->dhcpv6_event.uloop.fd, &assign->peer, &iov, 1, iface);
}
-void dhcpv6_enum_ia_addrs(struct interface *iface, struct dhcp_assignment *c,
+void dhcpv6_ia_enum_addrs(struct interface *iface, struct dhcp_assignment *c,
time_t now, dhcpv6_binding_cb_handler_t func, void *arg)
{
struct odhcpd_ipaddr *addrs = (c->managed) ? c->managed : iface->addr6;
"%s/%d ", ipbuf, prefix);
}
-void dhcpv6_write_statefile(void)
+void dhcpv6_ia_write_statefile(void)
{
struct write_ctxt ctxt;
ctxt.c->assigned, (unsigned)ctxt.c->length);
if (INFINITE_VALID(ctxt.c->valid_until) || ctxt.c->valid_until > now)
- dhcpv6_enum_ia_addrs(ctxt.iface, ctxt.c, now,
+ dhcpv6_ia_enum_addrs(ctxt.iface, ctxt.c, now,
dhcpv6_write_ia_addr, &ctxt);
ctxt.buf[ctxt.buf_idx - 1] = '\n';
}
}
- dhcpv6_write_statefile();
+ dhcpv6_ia_write_statefile();
}
static void reconf_timeout_cb(struct uloop_timeout *event)
.buf_len = sizeof(leasebuf),
.buf_idx = 0 };
- dhcpv6_enum_ia_addrs(iface, a, now, dhcpv6_log_ia_addr, &ctxt);
+ dhcpv6_ia_enum_addrs(iface, a, now, dhcpv6_log_ia_addr, &ctxt);
}
syslog(LOG_WARNING, "DHCPV6 %s %s from %s on %s: %s %s", type, (is_pd) ? "IA_PD" : "IA_NA",
return onlink;
}
-ssize_t dhcpv6_handle_ia(uint8_t *buf, size_t buflen, struct interface *iface,
+ssize_t dhcpv6_ia_handle_IAs(uint8_t *buf, size_t buflen, struct interface *iface,
const struct sockaddr_in6 *addr, const void *data, const uint8_t *end)
{
time_t now = odhcpd_time();
break;
}
- dhcpv6_write_statefile();
+ dhcpv6_ia_write_statefile();
out:
return response_len;