| 2261 | } |
| 2262 | |
| 2263 | void |
| 2264 | sctp_asconf_iterator_end(void *ptr, uint32_t val SCTP_UNUSED) |
| 2265 | { |
| 2266 | struct sctp_asconf_iterator *asc; |
| 2267 | struct sctp_ifa *ifa; |
| 2268 | struct sctp_laddr *l, *nl; |
| 2269 | |
| 2270 | asc = (struct sctp_asconf_iterator *)ptr; |
| 2271 | LIST_FOREACH_SAFE(l, &asc->list_of_work, sctp_nxt_addr, nl) { |
| 2272 | ifa = l->ifa; |
| 2273 | if (l->action == SCTP_ADD_IP_ADDRESS) { |
| 2274 | /* Clear the defer use flag */ |
| 2275 | ifa->localifa_flags &= ~SCTP_ADDR_DEFER_USE; |
| 2276 | } |
| 2277 | sctp_free_ifa(ifa); |
| 2278 | SCTP_ZONE_FREE(SCTP_BASE_INFO(ipi_zone_laddr), l); |
| 2279 | SCTP_DECR_LADDR_COUNT(); |
| 2280 | } |
| 2281 | SCTP_FREE(asc, SCTP_M_ASC_IT); |
| 2282 | } |
| 2283 | |
| 2284 | /* |
| 2285 | * sa is the sockaddr to ask the peer to set primary to. |
no test coverage detected