summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2011-08-17 17:37:16 +0200
committerHolger Hans Peter Freyther <zecke@selfish.org>2012-05-02 19:24:30 +0200
commitcef72c9276d7c4ab59cc750fa84183544c2e440d (patch)
treec4235412b81f72c8867b8ba460696fc0237b1bd0
parentedf32bbdeed1c1e9a73a48e15522b426b96cd682 (diff)
bsc: Introduce an authenticated signal for the MSC connection
Send the signal whenever a MSC appears to be authenticated.
-rw-r--r--openbsc/include/openbsc/signal.h1
-rw-r--r--openbsc/src/osmo-bsc/osmo_bsc_msc.c4
2 files changed, 5 insertions, 0 deletions
diff --git a/openbsc/include/openbsc/signal.h b/openbsc/include/openbsc/signal.h
index 2991cfac1..db2378253 100644
--- a/openbsc/include/openbsc/signal.h
+++ b/openbsc/include/openbsc/signal.h
@@ -243,6 +243,7 @@ struct ns_signal_data {
enum signal_msc {
S_MSC_LOST,
S_MSC_CONNECTED,
+ S_MSC_AUTHENTICATED,
};
struct osmo_msc_data;
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_msc.c b/openbsc/src/osmo-bsc/osmo_bsc_msc.c
index 6f319f9a7..4dde599d8 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_msc.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_msc.c
@@ -419,12 +419,16 @@ static void initialize_if_needed(struct bsc_msc_connection *conn)
static void send_id_get_response(struct osmo_msc_data *data, int fd)
{
+ struct msc_signal_data sig;
struct msgb *msg;
msg = bsc_msc_id_get_resp(data->bsc_token);
if (!msg)
return;
msc_queue_write(data->msc_con, msg, IPAC_PROTO_IPACCESS);
+
+ sig.data = data;
+ osmo_signal_dispatch(SS_MSC, S_MSC_AUTHENTICATED, &sig);
}
int osmo_bsc_msc_init(struct osmo_msc_data *data)