aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/openbsc/signal.h7
-rw-r--r--src/abis_nm.c3
2 files changed, 10 insertions, 0 deletions
diff --git a/include/openbsc/signal.h b/include/openbsc/signal.h
index 9fb8cf3f1..c2cf46a26 100644
--- a/include/openbsc/signal.h
+++ b/include/openbsc/signal.h
@@ -36,6 +36,7 @@ enum signal_subsystems {
SS_PAGING,
SS_SMS,
SS_ABISIP,
+ SS_NM,
};
/* SS_PAGING signals */
@@ -48,6 +49,12 @@ enum signal_abisip {
S_ABISIP_BIND_ACK,
};
+/* SS_NM signals */
+enum signal_nm {
+ S_NM_SW_ACTIV_REP, /* GSM 12.21 software activated report */
+ S_NM_FAIL_REP, /* GSM 12.21 failure event report */
+};
+
typedef int signal_cbfn(unsigned int subsys, unsigned int signal,
void *handler_data, void *signal_data);
diff --git a/src/abis_nm.c b/src/abis_nm.c
index fcc192adc..9db2936f8 100644
--- a/src/abis_nm.c
+++ b/src/abis_nm.c
@@ -42,6 +42,7 @@
#include <openbsc/tlv.h>
#include <openbsc/abis_nm.h>
#include <openbsc/misdn.h>
+#include <openbsc/signal.h>
#define OM_ALLOC_SIZE 1024
#define OM_HEADROOM_SIZE 128
@@ -623,9 +624,11 @@ static int abis_nm_rcvmsg_report(struct msgb *mb)
break;
case NM_MT_SW_ACTIVATED_REP:
DEBUGPC(DNM, "Software Activated Report\n");
+ dispatch_signal(SS_NM, S_NM_SW_ACTIV_REP, mb);
break;
case NM_MT_FAILURE_EVENT_REP:
DEBUGPC(DNM, "Failure Event Report\n");
+ dispatch_signal(SS_NM, S_NM_FAIL_REP, mb);
break;
default:
DEBUGPC(DNM, "reporting NM MT 0x%02x\n", mt);