diff options
author | Vadim Yanitskiy <axilirator@gmail.com> | 2018-04-04 06:21:45 +0700 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2018-04-12 09:27:44 +0000 |
commit | 048eb306842fabf9fb577f3d35c46b482fb0b867 (patch) | |
tree | 5fe621b03fd82f43781ddcc5ce762ddd504d0bff | |
parent | fe4ba7c057db8bb57490bf53af42a6bec198a2d0 (diff) |
libmsc/ussd: don't overwrite rc if decoding failed
Change-Id: I344e4b3a9aad617686a7ddbdeae5780fd8b07e58
-rw-r--r-- | src/libmsc/ussd.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libmsc/ussd.c b/src/libmsc/ussd.c index ab5957162..fe1610f44 100644 --- a/src/libmsc/ussd.c +++ b/src/libmsc/ussd.c @@ -74,8 +74,9 @@ int handle_rcv_ussd(struct gsm_subscriber_connection *conn, struct msgb *msg) if (!rc) { LOGP(DMM, LOGL_ERROR, "SS/USSD message parsing error, " "rejecting request...\n"); - rc = gsm0480_send_ussd_reject(conn, &req); - return rc; + gsm0480_send_ussd_reject(conn, &req); + /* The GSM 04.80 API uses inverted codes (0 means error) */ + return -EPROTO; } /* Interrogation or releaseComplete? */ |