diff options
Diffstat (limited to 'openbsc')
-rw-r--r-- | openbsc/src/bsc_api.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/openbsc/src/bsc_api.c b/openbsc/src/bsc_api.c index 35babc319..8b3ff8f3a 100644 --- a/openbsc/src/bsc_api.c +++ b/openbsc/src/bsc_api.c @@ -606,6 +606,20 @@ static int bsc_handle_lchan_signal(unsigned int subsys, unsigned int signal, if (subsys != SS_LCHAN) return 0; + /* + * Check if it is any of the signals we handle. We do want + * to do this early as we will need to check the lchan and + * the bsc api in it. + */ + switch (signal) { + case S_LCHAN_UNEXPECTED_RELEASE: + case S_LCHAN_ACTIVATE_ACK: + case S_LCHAN_ACTIVATE_NACK: + break; + default: + return -1; + } + lchan = (struct gsm_lchan *)signal_data; if (!lchan || !lchan->conn) return 0; |