diff options
author | Harald Welte <laforge@gnumonks.org> | 2013-07-30 22:30:24 +0800 |
---|---|---|
committer | Holger Hans Peter Freyther <holger@moiji-mobile.com> | 2013-08-03 19:20:36 +0200 |
commit | 1aeb2af75d27fdb4ab31d145ec49e84e29ecd501 (patch) | |
tree | 2d5b2cd1edacd0deaaa8191c3751f25409f83364 | |
parent | 14d1177735bb751aa9e2796c58c1d746a5b0de9c (diff) |
SMPP: don't get stuck in case of SMS memory exceeded
If the MS memory for SMS is exceeded and we get an RP-layer error, we
need to report that back to the (transaction-mode) ESME. Otherwise the
ESME will wait forever after sending a SUBMIT-SM without ever receiving
a response to it.
Thanks to Holger for catching this.
-rw-r--r-- | openbsc/src/libmsc/smpp_openbsc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/openbsc/src/libmsc/smpp_openbsc.c b/openbsc/src/libmsc/smpp_openbsc.c index 8e0085d0c..eb1ac11b7 100644 --- a/openbsc/src/libmsc/smpp_openbsc.c +++ b/openbsc/src/libmsc/smpp_openbsc.c @@ -259,6 +259,10 @@ static int smpp_sms_cb(unsigned int subsys, unsigned int signal, return 0; switch (signal) { + case S_SMS_MEM_EXCEEDED: + /* fall-through: There is no ESME_Rxxx result code to + * indicate a MEMORY EXCEEDED in transaction mode back + * to the ESME */ case S_SMS_UNKNOWN_ERROR: if (sms->smpp.transaction_mode) { /* Send back the SUBMIT-SM response with apropriate error */ |