This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
dexter gerrit-no-reply at lists.osmocom.orgdexter has uploaded this change for review. ( https://gerrit.osmocom.org/10333 Change subject: GSCON: avoid sending clear when not connected ...................................................................... GSCON: avoid sending clear when not connected The function gscon_lchan_releasing() may be called randomly by any other entity. It then sets the FSM state to ST_CLEARING and sends a BSSMAP CLEAR REQUEST by using gscon_bssmap_clear() Normally gscon_bssmap_clear() protects against sending connection oriented data when no connection is present. This is done by checking if the FSM state is ST_INIT or ST_WAIT_CC. If yes, then nothing is sent. Now gscon_lchan_releasing() defeats this check by first setting the FSM to ST_CLEARING and then trying to send. This causes osmo_bsc_sigtran_send() to be called and the assertion OSMO_ASSERT(conn->sccp.msc); blows because we never had a connection so sccp.msc is unpopulated. We have the possibility to get around the problem by first checking if we are in ST_CLEARING. If yes, we do nothing. If not we still must be in ST_INIT when we never had a connection before. So we may call on_bssmap_clear() without any problem and then set the state to ST_CLEARING. OS#3446 Change-Id: I4eaa983702224e5995a388ea9890ee04212eb569 --- M src/osmo-bsc/bsc_subscr_conn_fsm.c 1 file changed, 3 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/33/10333/1 diff --git a/src/osmo-bsc/bsc_subscr_conn_fsm.c b/src/osmo-bsc/bsc_subscr_conn_fsm.c index 81fe9f6..bc7539b 100644 --- a/src/osmo-bsc/bsc_subscr_conn_fsm.c +++ b/src/osmo-bsc/bsc_subscr_conn_fsm.c @@ -627,9 +627,10 @@ conn->lchan = NULL; } if (!conn->lchan) { - if (conn->fi->state != ST_CLEARING) + if (conn->fi->state != ST_CLEARING) { + gscon_bssmap_clear(conn, GSM0808_CAUSE_EQUIPMENT_FAILURE); osmo_fsm_inst_state_chg(conn->fi, ST_CLEARING, 60, 999); - gscon_bssmap_clear(conn, GSM0808_CAUSE_EQUIPMENT_FAILURE); + } } } -- To view, visit https://gerrit.osmocom.org/10333 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I4eaa983702224e5995a388ea9890ee04212eb569 Gerrit-Change-Number: 10333 Gerrit-PatchSet: 1 Gerrit-Owner: dexter <pmaier at sysmocom.de> -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20180803/aeb275c7/attachment.htm>