Lines Matching full:prefix

91 static bool ipv6_pe_use_this_prefix(const struct in6_addr *prefix)  in ipv6_pe_use_this_prefix()  argument
106 if (net_ipv6_addr_cmp(prefix, &ipv6_pe_filter[i])) { in ipv6_pe_use_this_prefix()
130 ARG_UNUSED(prefix); in ipv6_pe_use_this_prefix()
137 const struct in6_addr *prefix) in ipv6_pe_prefix_already_exists() argument
149 (uint8_t *)prefix, 64)) { in ipv6_pe_prefix_already_exists()
159 const struct in6_addr *prefix) in ipv6_pe_prefix_remove() argument
169 (uint8_t *)prefix, 64)) { in ipv6_pe_prefix_remove()
180 const struct in6_addr *prefix, in ipv6_pe_prefix_update_lifetimes() argument
192 (uint8_t *)prefix, 64))) { in ipv6_pe_prefix_update_lifetimes()
208 * prefix should be in a non-deprecated state at any given in ipv6_pe_prefix_update_lifetimes()
220 const struct in6_addr *prefix, in gen_temporary_iid() argument
233 struct in6_addr prefix; in gen_temporary_iid() member
243 memcpy(&buf.prefix, prefix, sizeof(struct in6_addr)); in gen_temporary_iid()
291 void net_ipv6_pe_start(struct net_if *iface, const struct in6_addr *prefix, in net_ipv6_pe_start() argument
314 /* Check if user agrees to use this prefix */ in net_ipv6_pe_start()
315 if (!ipv6_pe_use_this_prefix(prefix)) { in net_ipv6_pe_start()
316 NET_DBG("Prefix %s/64 is not to be used", in net_ipv6_pe_start()
317 net_sprint_ipv6_addr(prefix)); in net_ipv6_pe_start()
321 /* If the prefix is already added and it is still valid and is not in net_ipv6_pe_start()
324 if (ipv6_pe_prefix_already_exists(ipv6, prefix)) { in net_ipv6_pe_start()
326 i = ipv6_pe_prefix_remove(iface, ipv6, prefix); in net_ipv6_pe_start()
328 NET_DBG("Removed %d addresses using prefix %s/64", in net_ipv6_pe_start()
329 i, net_sprint_ipv6_addr(prefix)); in net_ipv6_pe_start()
331 ipv6_pe_prefix_update_lifetimes(ipv6, prefix, vlifetime); in net_ipv6_pe_start()
343 "created for prefix %s/64", preferred_lifetime, in net_ipv6_pe_start()
345 net_sprint_ipv6_addr(prefix)); in net_ipv6_pe_start()
349 NET_DBG("Starting PE process for prefix %s/64", in net_ipv6_pe_start()
350 net_sprint_ipv6_addr(prefix)); in net_ipv6_pe_start()
352 net_ipaddr_copy(&addr, prefix); in net_ipv6_pe_start()
355 ret = gen_temporary_iid(iface, prefix, in net_ipv6_pe_start()
376 NET_WARN("Could not create a valid iid for prefix %s/64 for interface %d", in net_ipv6_pe_start()
377 net_sprint_ipv6_addr(prefix), in net_ipv6_pe_start()
438 struct in6_addr *prefix = user_data; in iface_cb() local
461 (uint8_t *)prefix, 64); in iface_cb()
509 net_ipaddr_copy(&info.prefix, addr); in send_filter_event()
678 struct in6_addr prefix; in renewal_cb() local
710 net_ipaddr_copy(&prefix, &ipv6->unicast[i].address.in6_addr); in renewal_cb()
711 memset(prefix.s6_addr + 8, 0, sizeof(prefix) - 8); in renewal_cb()
724 net_ipv6_pe_start(iface, &prefix, in renewal_cb()