bsc_api: Provide the link_id in the dtap callback.

This commit is contained in:
Holger Hans Peter Freyther 2010-11-04 12:18:00 +01:00
parent b094171c9f
commit 46caa3048d
4 changed files with 8 additions and 6 deletions

View File

@ -14,7 +14,8 @@ struct bsc_api {
struct msgb *msg, uint8_t chosen_encr);
int (*compl_l3)(struct gsm_subscriber_connection *conn,
struct msgb *msg, uint16_t chosen_channel);
void (*dtap)(struct gsm_subscriber_connection *conn, struct msgb *msg);
void (*dtap)(struct gsm_subscriber_connection *conn, uint8_t link_id,
struct msgb *msg);
void (*assign_compl)(struct gsm_subscriber_connection *conn,
uint8_t rr_cause, uint8_t chosen_channel,
uint8_t encr_alg_id, uint8_t speech_mode);

View File

@ -35,7 +35,7 @@ static int bsc_compl_l3(struct gsm_subscriber_connection *conn, struct msgb *msg
return BSC_API_CONN_POL_REJECT;
}
static void bsc_dtap(struct gsm_subscriber_connection *conn, struct msgb *msg)
static void bsc_dtap(struct gsm_subscriber_connection *conn, uint8_t link_id, struct msgb *msg)
{
}

View File

@ -232,7 +232,8 @@ int bsc_upqueue(struct gsm_network *net)
return work;
}
static void dispatch_dtap(struct gsm_subscriber_connection *conn, struct msgb *msg)
static void dispatch_dtap(struct gsm_subscriber_connection *conn,
uint8_t link_id, struct msgb *msg)
{
struct bsc_api *api = msg->lchan->ts->trx->bts->network->bsc_api;
struct gsm48_hdr *gh;
@ -280,7 +281,7 @@ static void dispatch_dtap(struct gsm_subscriber_connection *conn, struct msgb *m
/* default case */
if (api->dtap)
api->dtap(conn, msg);
api->dtap(conn, link_id, msg);
}
int gsm0408_rcvmsg(struct msgb *msg, uint8_t link_id)
@ -297,7 +298,7 @@ int gsm0408_rcvmsg(struct msgb *msg, uint8_t link_id)
if (lchan->conn) {
dispatch_dtap(lchan->conn, msg);
dispatch_dtap(lchan->conn, link_id, msg);
} else {
rc = BSC_API_CONN_POL_REJECT;
lchan->conn = subscr_con_allocate(msg->lchan);

View File

@ -52,7 +52,7 @@ static int msc_compl_l3(struct gsm_subscriber_connection *conn, struct msgb *msg
return BSC_API_CONN_POL_ACCEPT;
}
static void msc_dtap(struct gsm_subscriber_connection *conn, struct msgb *msg)
static void msc_dtap(struct gsm_subscriber_connection *conn, uint8_t link_id, struct msgb *msg)
{
gsm0408_dispatch(conn, msg);
}