aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/libbsc/abis_nm.c
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2012-11-11 18:26:23 +0100
committerHolger Hans Peter Freyther <zecke@selfish.org>2012-11-11 18:33:17 +0100
commitde1674ab02d7c30f7f40f03d6942b7933d9d6d58 (patch)
treee3829aef5b1763df61e96d0a21019997877bb033 /openbsc/src/libbsc/abis_nm.c
parent75172124e7260a25e96d3bc385d30f02c8c1f49d (diff)
bts: Really drop the BTS in case of an OML NACK
The previous code didn't work as expected. The trx and dst pointer are located in an union and in the case of the Abis code the dst is used to point to the signalling link timeslot and not the TRX. The is_ipaccess_bts always returned false because the dst was casted to a trx while it was no trx. This fix was tested with the nack_test/NACKTest.st of the test repo.
Diffstat (limited to 'openbsc/src/libbsc/abis_nm.c')
-rw-r--r--openbsc/src/libbsc/abis_nm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/openbsc/src/libbsc/abis_nm.c b/openbsc/src/libbsc/abis_nm.c
index 4fd11c703..e95c0a905 100644
--- a/openbsc/src/libbsc/abis_nm.c
+++ b/openbsc/src/libbsc/abis_nm.c
@@ -548,6 +548,7 @@ static int abis_nm_rcvmsg_fom(struct msgb *mb)
nack_data.msg = mb;
nack_data.mt = mt;
+ nack_data.bts = sign_link->trx->bts;
osmo_signal_dispatch(SS_NM, S_NM_NACK, &nack_data);
abis_nm_queue_send_next(sign_link->trx->bts);
return 0;