/** * Build a static address binding from the given address binding. * * @param binding the address binding * @param link the link * @return the static address binding * @throws DhcpServerConfigException if the static binding is invalid */ protected V6StaticAddressBinding BuildV6StaticBinding(v6AddressBinding binding, link link) { try { IPAddress inetAddr = IPAddress.Parse(binding.ipAddress); V6StaticAddressBinding sb = new V6StaticAddressBinding(binding, GetIaType()); SetIpAsUsed(link, inetAddr); return(sb); } catch (Exception ex) { log.Error("Invalid static binding address"); throw new Exception("Invalid static binding address", ex); } }
/** * Build the list of static bindings for the given link. * * @param link the link * @return the list of static bindings * @throws DhcpServerConfigException if the static binding is invalid */ protected override List <StaticBinding> BuildStaticBindings(link link) { List <StaticBinding> staticBindings = new List <StaticBinding>(); List <v6AddressBinding> bindings = GetV6AddressBindings(link); if ((bindings != null) && bindings.Count > 0) { foreach (v6AddressBinding binding in bindings) { V6StaticAddressBinding sab = BuildV6StaticBinding(binding, link); staticBindings.Add(sab); } } return(staticBindings); }