context_map_sccp.c parrots states/events that the SCCP-SCOC FSM already handles
When I implemented the SCCP handling FSM for osmo-hnbgw, I was thinking in lines of what events I expect to happen on the SCCP wire, and overlooked the handling that the libosmo-sigtran SCCP-SCOC FSM already provides.
For example, if we want to disconnect while still waiting for an SCCP CC, IIUC there is no need for the context_map_sccp FSM to wait for the CC first -- the SCCP-SCOC already does that.
We should just dispatch the DISCONN primitive e.g. via osmo_sccp_tx_disconn(), and SCCP-SCOC will wait for the CC and then RLSD under the hood, for free.
Likely there are more unnecessary dups of SCCP-SCOC features in that FSM.