Skip to content

Commit

Permalink
Cleanup, no functional change intended
Browse files Browse the repository at this point in the history
  • Loading branch information
tuexen committed Oct 10, 2024
1 parent a07d9a8 commit dc9381f
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 16 deletions.
21 changes: 6 additions & 15 deletions usrsctplib/netinet/sctp_pcb.c
Original file line number Diff line number Diff line change
Expand Up @@ -297,7 +297,7 @@ sctp_free_vrf(struct sctp_vrf *vrf)
}
}

void
static void
sctp_free_ifn(struct sctp_ifn *sctp_ifnp)
{
if (SCTP_DECREMENT_AND_CHECK_REFCOUNT(&sctp_ifnp->refcount)) {
Expand Down Expand Up @@ -335,25 +335,16 @@ sctp_free_ifa(struct sctp_ifa *sctp_ifap)
}

static void
sctp_delete_ifn(struct sctp_ifn *sctp_ifnp, int hold_addr_lock)
sctp_delete_ifn(struct sctp_ifn *sctp_ifnp)
{
struct sctp_ifn *found;

found = sctp_find_ifn(sctp_ifnp->ifn_p, sctp_ifnp->ifn_index);
if (found == NULL) {
SCTP_IPI_ADDR_WLOCK_ASSERT();
if (sctp_find_ifn(sctp_ifnp->ifn_p, sctp_ifnp->ifn_index) == NULL) {
/* Not in the list.. sorry */
return;
}
if (hold_addr_lock == 0) {
SCTP_IPI_ADDR_WLOCK();
} else {
SCTP_IPI_ADDR_WLOCK_ASSERT();
}
LIST_REMOVE(sctp_ifnp, next_bucket);
LIST_REMOVE(sctp_ifnp, next_ifn);
if (hold_addr_lock == 0) {
SCTP_IPI_ADDR_WUNLOCK();
}
/* Take away the reference, and possibly free it */
sctp_free_ifn(sctp_ifnp);
}
Expand Down Expand Up @@ -508,7 +499,7 @@ sctp_remove_ifa_from_ifn(struct sctp_ifa *sctp_ifap)

if (LIST_EMPTY(&sctp_ifap->ifn_p->ifalist)) {
/* remove the ifn, possibly freeing it */
sctp_delete_ifn(sctp_ifap->ifn_p, SCTP_ADDR_LOCKED);
sctp_delete_ifn(sctp_ifap->ifn_p);
} else {
/* re-register address family type, if needed */
if ((sctp_ifap->ifn_p->num_v6 == 0) &&
Expand Down Expand Up @@ -612,7 +603,7 @@ sctp_add_addr_to_vrf(uint32_t vrf_id, void *ifn, uint32_t ifn_index,
(void *)sctp_ifap);
if (new_ifn_af) {
/* Remove the created one that we don't want */
sctp_delete_ifn(sctp_ifnp, SCTP_ADDR_LOCKED);
sctp_delete_ifn(sctp_ifnp);
}
if (sctp_ifap->localifa_flags & SCTP_BEING_DELETED) {
/* easy to solve, just switch back to active */
Expand Down
1 change: 0 additions & 1 deletion usrsctplib/netinet/sctp_pcb.h
Original file line number Diff line number Diff line change
Expand Up @@ -702,7 +702,6 @@ sctp_add_addr_to_vrf(uint32_t vrfid,

void sctp_update_ifn_mtu(uint32_t ifn_index, uint32_t mtu);

void sctp_free_ifn(struct sctp_ifn *sctp_ifnp);
void sctp_free_ifa(struct sctp_ifa *sctp_ifap);

void sctp_del_addr_from_vrf(uint32_t vrfid, struct sockaddr *addr,
Expand Down

0 comments on commit dc9381f

Please sign in to comment.