aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Engel <tobias@ccc.de>2012-03-28 13:54:20 +0200
committerTobias Engel <tobias@ccc.de>2012-03-28 13:54:20 +0200
commit97bcab37f4482f39ab8d2cd57c62bcf76f4e6db0 (patch)
treecd1d9ec3da6c8a61c137800ceddf4f53af562e14
parent588dff78bb873b05066e765dd5da25c2743fad11 (diff)
Send Return Error instead of Reject when service is not provisionedtobias/supplementary_services
-rw-r--r--openbsc/src/libmsc/ss.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/openbsc/src/libmsc/ss.c b/openbsc/src/libmsc/ss.c
index 44a01ec3a..4eabe1a6d 100644
--- a/openbsc/src/libmsc/ss.c
+++ b/openbsc/src/libmsc/ss.c
@@ -125,9 +125,9 @@ static int change_ss_activation(struct gsm_subscriber_connection *conn, uint8_t
if(rc < 0 || !(ss_status & GSM0902_SS_STATUS_P_BIT)) {
DEBUGP(DMM, "SS 0x%02X not provisioned\n", req->ss_code);
- return gsm0480_send_ss_reject(conn, req,
- GSM_0480_PROBLEM_CODE_TAG_INVOKE,
- GSM_0480_INVOKE_PROB_CODE_UNRECOGNISED_OPERATION);
+ return gsm0480_send_ss_return_error(conn, req,
+ GSM0480_ERR_CODE_SS_SUBSCRIPTION_VIOLATION,
+ NULL);
}
ss_status &= ~GSM0902_SS_STATUS_A_BIT;
@@ -160,9 +160,9 @@ static int interrogate_ss(struct gsm_subscriber_connection *conn, const struct s
if(rc < 0 || !(ss_status & GSM0902_SS_STATUS_P_BIT)) {
DEBUGP(DMM, "SS 0x%02X not provisioned\n", req->ss_code);
- return gsm0480_send_ss_reject(conn, req,
- GSM_0480_PROBLEM_CODE_TAG_INVOKE,
- GSM_0480_INVOKE_PROB_CODE_UNRECOGNISED_OPERATION);
+ return gsm0480_send_ss_return_error(conn, req,
+ GSM0480_ERR_CODE_SS_SUBSCRIPTION_VIOLATION,
+ NULL);
}
msg = gsm48_msgb_alloc();