diff options
author | Harald Welte <laforge@gnumonks.org> | 2009-02-22 21:13:18 +0000 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2009-02-22 21:13:18 +0000 |
commit | 5a065dfe2d440a053e3cabba3f8526544e7ab468 (patch) | |
tree | 024da12509bf2bb84f32cbbe2a05ea7f70c937c5 /src/gsm_04_08.c | |
parent | 1ef983b076490d9430296022a9744907096c0671 (diff) |
don't allow calls of a subscriber to himself
Diffstat (limited to 'src/gsm_04_08.c')
-rw-r--r-- | src/gsm_04_08.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gsm_04_08.c b/src/gsm_04_08.c index 20741506c..01f103b83 100644 --- a/src/gsm_04_08.c +++ b/src/gsm_04_08.c @@ -1027,6 +1027,13 @@ static int gsm48_cc_rx_setup(struct msgb *msg) return gsm48_tx_simple(msg->lchan, GSM48_PDISC_CC, GSM48_MT_CC_RELEASE_COMPL); } + if (called_subscr == msg->lchan->subscr) { + DEBUGP(DCC, "subscriber calling himself ?!?\n"); + put_lchan(msg->lchan); + subscr_put(called_subscr); + return gsm48_tx_simple(msg->lchan, GSM48_PDISC_CC, + GSM48_MT_CC_RELEASE_COMPL); + } subscr_get(msg->lchan->subscr); call->called_subscr = called_subscr; |