nat: Remove magic numbers, use enum values for conn classification

Remove the usage of 0, 1, 2 and start using enum values. We can
still assume con_local is a number.
This commit is contained in:
Holger Hans Peter Freyther 2011-04-16 16:02:59 +02:00
parent a64037cd4a
commit e5d324981d
2 changed files with 14 additions and 4 deletions

View File

@ -54,6 +54,16 @@ enum {
NAT_CON_TYPE_OTHER,
};
/*
* Is this terminated to the MSC, to the local machine (release
* handling for IMSI filtering) or to a USSD provider?
*/
enum {
NAT_CON_END_MSC,
NAT_CON_END_LOCAL,
NAT_CON_END_USSD,
};
/*
* Per BSC data structure
*/

View File

@ -399,7 +399,7 @@ static void bsc_send_con_release(struct bsc_connection *bsc, struct sccp_connect
ipaccess_prepend_header(rlsd, IPAC_PROTO_SCCP);
queue_for_msc(con->msc_con, rlsd);
}
con->con_local = 1;
con->con_local = NAT_CON_END_LOCAL;
con->msc_con = NULL;
/* 2. release the BSC side */
@ -465,7 +465,7 @@ static void bsc_send_con_refuse(struct bsc_connection *bsc,
/* declare it local and assign a unique remote_ref */
con->con_type = NAT_CON_TYPE_LOCAL_REJECT;
con->con_local = 1;
con->con_local = NAT_CON_END_LOCAL;
con->has_remote_ref = 1;
con->remote_ref = con->patched_ref;
@ -942,7 +942,7 @@ static int forward_sccp_to_msc(struct bsc_connection *bsc, struct msgb *msg)
/* hand data to a side channel */
if (bsc_check_ussd(con, parsed, msg) == 1)
con->con_local = 2;
con->con_local = NAT_CON_END_USSD;
/*
* Optionally rewrite setup message. This can
@ -1414,7 +1414,7 @@ int bsc_close_ussd_connections(struct bsc_nat *nat)
{
struct sccp_connections *con;
llist_for_each_entry(con, &nat->sccp_connections, list_entry) {
if (con->con_local != 2)
if (con->con_local != NAT_CON_END_USSD)
continue;
if (!con->bsc)
continue;