nat: Fix the filter when searching for a identity response
The filter code will return < 0 for error, 0 for unknown subscriber, 1 for subscriber checked. Use the same if construct as for the CR message. This should fix passing LU when it starts with a TMSI of a different network.
This commit is contained in:
parent
cf1c8777a4
commit
568b9682e0
|
@ -791,14 +791,14 @@ static int forward_sccp_to_msc(struct bsc_connection *bsc, struct msgb *msg)
|
|||
con = patch_sccp_src_ref_to_msc(msg, parsed, bsc);
|
||||
if (con) {
|
||||
filter = bsc_nat_filter_dt(bsc, msg, con, parsed);
|
||||
if (filter == 0) {
|
||||
con_bsc = con->bsc;
|
||||
con_msc = con->msc_con;
|
||||
con_filter = con->con_local;
|
||||
} else {
|
||||
if (filter < 0) {
|
||||
bsc_send_con_release(bsc, con);
|
||||
con = NULL;
|
||||
goto exit2;
|
||||
} else {
|
||||
con_bsc = con->bsc;
|
||||
con_msc = con->msc_con;
|
||||
con_filter = con->con_local;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue