diff options
author | Harald Welte <laforge@gnumonks.org> | 2010-12-23 01:07:46 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2010-12-26 10:01:41 +0100 |
commit | 404908d9bdc44513e6beb8f8fb2906ef43001b23 (patch) | |
tree | 3af7fc4d753ec575401fb1f81b6e274e1f43c5f2 /openbsc/include | |
parent | b7f8b35afdd5b4160dada99d1659db63578f158f (diff) |
MNCC: pass the actual 'struct msgb' down the mncc_recv() callback
this is required as we no longer have a dequeue-handler that can take
care of free()ing the message after passing it to the MNCC handler.
Diffstat (limited to 'openbsc/include')
-rw-r--r-- | openbsc/include/openbsc/gsm_data.h | 4 | ||||
-rw-r--r-- | openbsc/include/openbsc/mncc.h | 3 |
2 files changed, 4 insertions, 3 deletions
diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h index f9c87e757..59599ab03 100644 --- a/openbsc/include/openbsc/gsm_data.h +++ b/openbsc/include/openbsc/gsm_data.h @@ -694,7 +694,7 @@ struct gsm_network { struct gsmnet_stats stats; /* layer 4 */ - int (*mncc_recv) (struct gsm_network *net, int msg_type, void *arg); + int (*mncc_recv) (struct gsm_network *net, struct msgb *msg); struct llist_head upqueue; struct llist_head trans_list; struct bsc_api *bsc_api; @@ -762,7 +762,7 @@ struct gsm_sms { struct gsm_network *gsm_network_init(u_int16_t country_code, u_int16_t network_code, - int (*mncc_recv)(struct gsm_network *, int, void *)); + int (*mncc_recv)(struct gsm_network *, struct msgb *)); struct gsm_bts *gsm_bts_alloc(struct gsm_network *net, enum gsm_bts_type type, u_int8_t tsc, u_int8_t bsic); struct gsm_bts_trx *gsm_bts_trx_alloc(struct gsm_bts *bts); diff --git a/openbsc/include/openbsc/mncc.h b/openbsc/include/openbsc/mncc.h index 35d925aea..afcf33661 100644 --- a/openbsc/include/openbsc/mncc.h +++ b/openbsc/include/openbsc/mncc.h @@ -29,6 +29,7 @@ #include <osmocore/mncc.h> struct gsm_network; +struct msgb; /* One end of a call */ @@ -156,7 +157,7 @@ struct gsm_data_frame { }; char *get_mncc_name(int value); -int int_mncc_recv(struct gsm_network *net, int msg_type, void *arg); +int int_mncc_recv(struct gsm_network *net, struct msgb *msg); void mncc_set_cause(struct gsm_mncc *data, int loc, int val); void cc_tx_to_mncc(struct gsm_network *net, struct msgb *msg); |