| 228 | } |
| 229 | |
| 230 | void |
| 231 | sctp_free_vrf(struct sctp_vrf *vrf) |
| 232 | { |
| 233 | if (SCTP_DECREMENT_AND_CHECK_REFCOUNT(&vrf->refcount)) { |
| 234 | if (vrf->vrf_addr_hash) { |
| 235 | SCTP_HASH_FREE(vrf->vrf_addr_hash, vrf->vrf_addr_hashmark); |
| 236 | vrf->vrf_addr_hash = NULL; |
| 237 | } |
| 238 | /* We zero'd the count */ |
| 239 | LIST_REMOVE(vrf, next_vrf); |
| 240 | SCTP_FREE(vrf, SCTP_M_VRF); |
| 241 | atomic_subtract_int(&SCTP_BASE_INFO(ipi_count_vrfs), 1); |
| 242 | } |
| 243 | } |
| 244 | |
| 245 | void |
| 246 | sctp_free_ifn(struct sctp_ifn *sctp_ifnp) |