
4.5 Server Implementation 427
2760 lifetime = iav->val_prefix6.vltime;
2761 break;
2762 default:
2763 dprintf(LOG_ERR, FNAME, "internal error: "
2764 "unknown binding type (%d)",
2765 binding->iatype);
2766 return (NULL); /* XXX */
2767 }
2768
2769 if (lifetime != DHCP6_DURATITION_INFINITE &&
2770 lifetime <= past) {
2771 dprintf(LOG_DEBUG, FNAME, "bound prefix %s/%d"
2772 " in %s has expired",
2773 in6addr2str(&iav->val_prefix6.addr, 0),
2774 iav->val_prefix6.plen,
2775 bindingstr(binding));
2776 TAILQ_REMOVE(ia_list, iav, link);
2777 dhcp6_clear_listval(iav);
2778 }
2779 }
2780
2781 /* If all IA parameters have expired, remove the binding. */
2782 if (TAILQ_EMPTY(ia_list)) ...