diff options
author | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2016-05-10 13:37:59 +0200 |
---|---|---|
committer | Neels Hofmeyr <nhofmeyr@sysmocom.de> | 2017-03-16 15:32:30 +0100 |
commit | 49e65b3aeb463249032ff5f93a63b77f2cb65dbf (patch) | |
tree | e3e1b711aa803b6ffd112f1d45fa12eedc84f15d /openbsc/src | |
parent | 5686329ffe6860ce440ccd07e3ec114e1867e7b4 (diff) |
msc_compl_l3(): publish in .h, tweak return value
Use new libmsc enum values for return val, to avoid dependency on libbsc
headers.
Make callable from other scopes: publish in osmo_msc.h and remove 'static' in
osmo_msc.c
Change-Id: If24007445899e9c75553a0dbf843ada3566b3380
Diffstat (limited to 'openbsc/src')
-rw-r--r-- | openbsc/src/libmsc/osmo_msc.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/openbsc/src/libmsc/osmo_msc.c b/openbsc/src/libmsc/osmo_msc.c index 597577ea8..61ccbcee2 100644 --- a/openbsc/src/libmsc/osmo_msc.c +++ b/openbsc/src/libmsc/osmo_msc.c @@ -21,6 +21,7 @@ * */ +#include <openbsc/osmo_msc.h> #include <openbsc/bsc_api.h> #include <openbsc/debug.h> #include <openbsc/transaction.h> @@ -64,9 +65,10 @@ static bool keep_conn(struct gsm_subscriber_connection *conn) } } -/* Receive a COMPLETE LAYER3 INFO from BSC */ -static int msc_compl_l3(struct gsm_subscriber_connection *conn, struct msgb *msg, - uint16_t chosen_channel) +/* receive a Level 3 Complete message and return MSC_CONN_ACCEPT or + * MSC_CONN_REJECT */ +enum msc_compl_l3_rc msc_compl_l3(struct gsm_subscriber_connection *conn, + struct msgb *msg, uint16_t chosen_channel) { gsm0408_new_conn(conn); gsm0408_dispatch(conn, msg); @@ -76,13 +78,13 @@ static int msc_compl_l3(struct gsm_subscriber_connection *conn, struct msgb *msg if (!keep_conn(conn)) { DEBUGP(DMM, "compl_l3: Discarding conn\n"); - return BSC_API_CONN_POL_REJECT; + return MSC_CONN_REJECT; } DEBUGP(DMM, "compl_l3: Keeping conn\n"); conn->owned_by_msc = true; DEBUGP(DMM, "%s owned_by_msc = true\n", vlr_subscr_name(conn->vsub)); - return BSC_API_CONN_POL_ACCEPT; + return MSC_CONN_ACCEPT; #if 0 /* @@ -91,14 +93,14 @@ static int msc_compl_l3(struct gsm_subscriber_connection *conn, struct msgb *msg * pending transaction or ongoing operation. */ if (conn->silent_call) - return BSC_API_CONN_POL_ACCEPT; - if (conn->sec_operation || conn->anch_operation) - return BSC_API_CONN_POL_ACCEPT; + return MSC_CONN_ACCEPT; + if (conn->loc_operation || conn->sec_operation || conn->anch_operation) + return MSC_CONN_ACCEPT; if (trans_has_conn(conn)) - return BSC_API_CONN_POL_ACCEPT; + return MSC_CONN_ACCEPT; LOGP(DRR, LOGL_INFO, "MSC Complete L3: Rejecting connection.\n"); - return BSC_API_CONN_POL_REJECT; + return MSC_CONN_REJECT; #endif } |