diff options
Diffstat (limited to 'openbsc/src')
-rw-r--r-- | openbsc/src/nat/bsc_nat.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/openbsc/src/nat/bsc_nat.c b/openbsc/src/nat/bsc_nat.c index 2c0851827..838e8f9e8 100644 --- a/openbsc/src/nat/bsc_nat.c +++ b/openbsc/src/nat/bsc_nat.c @@ -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; |