diff options
author | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-05-03 16:13:02 +0800 |
---|---|---|
committer | Holger Hans Peter Freyther <zecke@selfish.org> | 2010-05-03 16:13:02 +0800 |
commit | f7b06fbe0cedd32d7933fb00aae2a0c0baa9cf6a (patch) | |
tree | 9b0c41d7cdf004af7fadbc17f0a80a59fcdb3ef3 | |
parent | 45403b1804d2318aec2858c28ac4c623bfdcde2f (diff) |
bsc: Speculative crash fix.
Make sure the sccp_cc_timeout is stopped when we delete the
associated data. There is one crash report that indicates that
we have a pending timer that is inside freed memory.
A crash could have occured when the connection to the MSC was
lost while have unconfirmed connections.
-rw-r--r-- | openbsc/src/bsc_msc_ip.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/openbsc/src/bsc_msc_ip.c b/openbsc/src/bsc_msc_ip.c index f760ad627..2e364ab0b 100644 --- a/openbsc/src/bsc_msc_ip.c +++ b/openbsc/src/bsc_msc_ip.c @@ -99,6 +99,7 @@ struct bss_sccp_connection_data *bss_sccp_create_data() void bss_sccp_free_data(struct bss_sccp_connection_data *data) { bsc_del_timer(&data->T10); + bsc_del_timer(&data->sccp_cc_timeout); bsc_del_timer(&data->sccp_it); if (data->sccp) bsc_free_queued(data->sccp); |