laforge has submitted this change. ( https://gerrit.osmocom.org/c/osmo-remsim/+/28026 )
Change subject: server: Fix segfault in error path (client component ID != client) ......................................................................
server: Fix segfault in error path (client component ID != client)
When we terminate the FSM instance, we must immediately return.
Change-Id: I8dff45daa6584ed111a8469e7b3bf90e7c939612 --- M src/server/rspro_server.c 1 file changed, 2 insertions(+), 0 deletions(-)
Approvals: Jenkins Builder: Verified pespin: Looks good to me, but someone else must approve laforge: Looks good to me, approved
diff --git a/src/server/rspro_server.c b/src/server/rspro_server.c index c003202..c4d4d79 100644 --- a/src/server/rspro_server.c +++ b/src/server/rspro_server.c @@ -138,6 +138,7 @@ if (conn->comp_id.type != ComponentType_remsimClient) { LOGPFSML(fi, LOGL_ERROR, "ConnectClientReq from identity != Client ?!?\n"); osmo_fsm_inst_term(fi, OSMO_FSM_TERM_ERROR, NULL); + return; }
/* reparent us from srv->connections to srv->clients */ @@ -180,6 +181,7 @@ if (conn->comp_id.type != ComponentType_remsimBankd) { LOGPFSML(fi, LOGL_ERROR, "ConnectBankReq from identity != Bank ?!?\n"); osmo_fsm_inst_term(fi, OSMO_FSM_TERM_ERROR, NULL); + return; } /* FIXME: check for unique-ness */ conn->bank.bank_id = cbreq->bankId;