diff options
Diffstat (limited to 'openbsc/src/nat')
-rw-r--r-- | openbsc/src/nat/bsc_nat.c | 4 | ||||
-rw-r--r-- | openbsc/src/nat/bsc_nat_utils.c | 4 | ||||
-rw-r--r-- | openbsc/src/nat/bsc_nat_vty.c | 11 |
3 files changed, 12 insertions, 7 deletions
diff --git a/openbsc/src/nat/bsc_nat.c b/openbsc/src/nat/bsc_nat.c index 82f0fec8b..561be8af6 100644 --- a/openbsc/src/nat/bsc_nat.c +++ b/openbsc/src/nat/bsc_nat.c @@ -377,9 +377,9 @@ static void ipaccess_auth_bsc(struct tlv_parsed *tvp, struct bsc_connection *bsc llist_for_each_entry(conf, &bsc->nat->bsc_configs, entry) { if (strcmp(conf->token, token) == 0) { bsc->authenticated = 1; - bsc->lac = conf->lac; + bsc->cfg = conf; bsc_del_timer(&bsc->id_timeout); - LOGP(DNAT, LOGL_NOTICE, "Authenticated bsc %d\n", bsc->lac); + LOGP(DNAT, LOGL_NOTICE, "Authenticated bsc nr: %d lac: %d\n", conf->nr, conf->lac); break; } } diff --git a/openbsc/src/nat/bsc_nat_utils.c b/openbsc/src/nat/bsc_nat_utils.c index 8c6de31fe..24b4e1f00 100644 --- a/openbsc/src/nat/bsc_nat_utils.c +++ b/openbsc/src/nat/bsc_nat_utils.c @@ -115,7 +115,9 @@ struct bsc_connection *bsc_nat_find_bsc(struct bsc_nat *nat, struct msgb *msg) for (i = 1; i < data_length - 1; i += 2) { unsigned int _lac = ntohs(*(unsigned int *) &data[i]); llist_for_each_entry(bsc, &nat->bsc_connections, list_entry) { - if (!bsc->authenticated || _lac != bsc->lac) + if (!bsc->cfg) + continue; + if (!bsc->authenticated || _lac != bsc->cfg->lac) continue; return bsc; diff --git a/openbsc/src/nat/bsc_nat_vty.c b/openbsc/src/nat/bsc_nat_vty.c index d5f83ebdd..4c60a19f7 100644 --- a/openbsc/src/nat/bsc_nat_vty.c +++ b/openbsc/src/nat/bsc_nat_vty.c @@ -76,8 +76,9 @@ DEFUN(show_sccp, show_sccp_cmd, "show connections sccp", { struct sccp_connections *con; llist_for_each_entry(con, &_nat->sccp_connections, list_entry) { - vty_out(vty, "SCCP for BSC: %d BSC ref: 0x%x Local ref: 0x%x MSC/BSC mux: 0x%x/0x%x%s", - con->bsc->lac, + vty_out(vty, "SCCP for BSC: Nr: %d lac: %d BSC ref: 0x%x Local ref: 0x%x MSC/BSC mux: 0x%x/0x%x%s", + con->bsc->cfg ? con->bsc->cfg->nr : -1, + con->bsc->cfg ? con->bsc->cfg->lac : -1, sccp_src_ref_to_int(&con->real_ref), sccp_src_ref_to_int(&con->patched_ref), con->msc_timeslot, con->bsc_timeslot, @@ -92,8 +93,10 @@ DEFUN(show_bsc, show_bsc_cmd, "show connections bsc", { struct bsc_connection *con; llist_for_each_entry(con, &_nat->bsc_connections, list_entry) { - vty_out(vty, "BSC lac: %d auth: %d fd: %d%s", - con->lac, con->authenticated, con->write_queue.bfd.fd, VTY_NEWLINE); + vty_out(vty, "BSC lac: %d, %d auth: %d fd: %d%s", + con->cfg ? con->cfg->nr : -1, + con->cfg ? con->cfg->lac : -1, + con->authenticated, con->write_queue.bfd.fd, VTY_NEWLINE); } return CMD_SUCCESS; |