[PATCH 03/11] tests: e1inp_ipa_bsc_test: fix crash

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/OpenBSC@lists.osmocom.org/.

pablo at gnumonks.org pablo at gnumonks.org
Wed Aug 22 15:04:45 UTC 2012


From: Pablo Neira Ayuso <pablo at gnumonks.org>

The sequence to trigger the crash was:

1) establish a full A-bis IPA link (both OML and RSL correctly established
and ID_RESP received from BTS).
2) nc 127.0.0.1 3002 # establish OML link only

I forgot to set to NULL the oml and rsl links we're using. Otherwise,
the test calls e1inp_sign_link_destroy(rsl) which does not exists.
---
 tests/e1inp_ipa_bsc_test.c |    8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/tests/e1inp_ipa_bsc_test.c b/tests/e1inp_ipa_bsc_test.c
index 424c87b..a0e5653 100644
--- a/tests/e1inp_ipa_bsc_test.c
+++ b/tests/e1inp_ipa_bsc_test.c
@@ -62,10 +62,14 @@ sign_link_up(void *dev, struct e1inp_line *line, enum e1inp_sign_type type)
 static void sign_link_down(struct e1inp_line *line)
 {
 	LOGP(DBSCTEST, LOGL_NOTICE, "signal link has been closed\n");
-	if (oml_sign_link)
+	if (oml_sign_link) {
 		e1inp_sign_link_destroy(oml_sign_link);
-	if (rsl_sign_link)
+		oml_sign_link = NULL;
+	}
+	if (rsl_sign_link) {
 		e1inp_sign_link_destroy(rsl_sign_link);
+		rsl_sign_link = NULL;
+	}
 }
 
 static void fill_om_hdr(struct abis_om_hdr *oh, uint8_t len)
-- 
1.7.10.4





More information about the OpenBSC mailing list