laforge has uploaded this change for review.

View Change

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(-)

git pull ssh://gerrit.osmocom.org:29418/osmo-remsim refs/changes/26/28026/1
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;

To view, visit change 28026. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: osmo-remsim
Gerrit-Branch: master
Gerrit-Change-Id: I8dff45daa6584ed111a8469e7b3bf90e7c939612
Gerrit-Change-Number: 28026
Gerrit-PatchSet: 1
Gerrit-Owner: laforge <laforge@osmocom.org>
Gerrit-MessageType: newchange