diff options
author | Harald Welte <laforge@netfilter.org> | 2009-12-17 22:23:21 +0100 |
---|---|---|
committer | Harald Welte <laforge@netfilter.org> | 2009-12-17 22:23:21 +0100 |
commit | 66706812514c4baca743ad3a07e4556d48b6cded (patch) | |
tree | 87e079a917d45f373adb119fc6bd34178b06a102 /openbsc | |
parent | 7cb7a73b4fe7152dc89f4450c43d5f10daf9900a (diff) |
don't try multiple concurrent handovers for 1 channel
Diffstat (limited to 'openbsc')
-rw-r--r-- | openbsc/src/handover_logic.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/openbsc/src/handover_logic.c b/openbsc/src/handover_logic.c index 68cdcba07..9da8baf91 100644 --- a/openbsc/src/handover_logic.c +++ b/openbsc/src/handover_logic.c @@ -88,6 +88,11 @@ int bsc_handover_start(struct gsm_lchan *old_lchan, struct gsm_bts *bts) static u_int8_t ho_ref; int rc; + /* don't attempt multiple handovers for the same lchan at + * the same time */ + if (bsc_ho_by_old_lchan(old_lchan)) + return -EBUSY; + DEBUGP(DHO, "(old_lchan on BTS %u, new BTS %u): ", old_lchan->ts->trx->bts->nr, bts->nr); |