Before this patch a SIGABRT was caused when doing e.g.: $ ncat 127.0.0.1 4249 ^C --- openbsc/src/libctrl/control_if.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/openbsc/src/libctrl/control_if.c b/openbsc/src/libctrl/control_if.c index 8198ae6..c395b08 100644 --- a/openbsc/src/libctrl/control_if.c +++ b/openbsc/src/libctrl/control_if.c @@ -208,7 +208,7 @@ static int handle_control_read(struct osmo_fd * bfd) struct ctrl_connection *ccon; struct ipaccess_head *iph; struct ipaccess_head_ext *iph_ext; - struct msgb *msg; + struct msgb *msg = NULL; struct ctrl_cmd *cmd; struct ctrl_handle *ctrl = bfd->data;
@@ -269,7 +269,8 @@ static int handle_control_read(struct osmo_fd * bfd)
err: control_close_conn(ccon); - msgb_free(msg); + if (msg) + msgb_free(msg); return ret; }