pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmo-pfcp/+/41484?usp=email )
Change subject: Introduce API osmo_pfcp_cp_peer_free() ......................................................................
Introduce API osmo_pfcp_cp_peer_free()
Change-Id: I31498c407a8fffd8b47cce8c6bf89dc6e3fcefd2 --- M TODO-RELEASE M include/osmocom/pfcp/pfcp_cp_peer.h M src/libosmo-pfcp/pfcp_cp_peer.c 3 files changed, 9 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-pfcp refs/changes/84/41484/1
diff --git a/TODO-RELEASE b/TODO-RELEASE index 203a2fd..6bcdfb2 100644 --- a/TODO-RELEASE +++ b/TODO-RELEASE @@ -8,3 +8,4 @@ # If any interfaces have been removed or changed since the last public release: c:r:0. #library what description / commit summary line libosmo-pfcp add osmo_pfcp_ie_node_id_cmp() +libosmo-pfcp add osmo_pfcp_cp_peer_free() diff --git a/include/osmocom/pfcp/pfcp_cp_peer.h b/include/osmocom/pfcp/pfcp_cp_peer.h index 739526e..ac73bc4 100644 --- a/include/osmocom/pfcp/pfcp_cp_peer.h +++ b/include/osmocom/pfcp/pfcp_cp_peer.h @@ -39,6 +39,7 @@ struct osmo_pfcp_cp_peer *osmo_pfcp_cp_peer_alloc(void *ctx, struct osmo_pfcp_endpoint *ep, const struct osmo_sockaddr *remote_addr); +void osmo_pfcp_cp_peer_free(struct osmo_pfcp_cp_peer *cp_peer); int osmo_pfcp_cp_peer_associate(struct osmo_pfcp_cp_peer *cp_peer); bool osmo_pfcp_cp_peer_is_associated(const struct osmo_pfcp_cp_peer *cp_peer); int osmo_pfcp_cp_peer_set_associated_cb(struct osmo_pfcp_cp_peer *cp_peer, osmo_pfcp_cp_peer_assoc_cb assoc_cb); diff --git a/src/libosmo-pfcp/pfcp_cp_peer.c b/src/libosmo-pfcp/pfcp_cp_peer.c index c88c6d1..403a474 100644 --- a/src/libosmo-pfcp/pfcp_cp_peer.c +++ b/src/libosmo-pfcp/pfcp_cp_peer.c @@ -120,6 +120,13 @@ return cp_peer; }
+void osmo_pfcp_cp_peer_free(struct osmo_pfcp_cp_peer *cp_peer) +{ + if (!cp_peer) + return; + osmo_fsm_inst_term(cp_peer->fi, OSMO_FSM_TERM_REGULAR, NULL); +} + int osmo_pfcp_cp_peer_associate(struct osmo_pfcp_cp_peer *cp_peer) { struct osmo_fsm_inst *fi = cp_peer->fi;