diff options
author | Harald Welte <laforge@gnumonks.org> | 2010-05-31 22:12:30 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2010-05-31 22:12:30 +0200 |
commit | 56a0145dd8955b00ef9cff608f5e03912401a0f7 (patch) | |
tree | 3e97490542e9892a53bbc8360412ecdcebffdcf7 /openbsc/include | |
parent | c2e8cc4a10d741763736d375bb663c593ee2de31 (diff) |
[GPRS] Include IMSI and DRX params in BSSGP DL-UD
When we send a downlink unit-data request via BSSGP, there is a lot
of information that needs to be copied from the mm context, such as
the IMSI, DRX parametes, MS radio access parameters, ...
This is a quite strange layering violation, since we now need to pass
a pointer to the MM ctx from GMM through LLC into BSSGP :(
Diffstat (limited to 'openbsc/include')
-rw-r--r-- | openbsc/include/openbsc/gprs_bssgp.h | 3 | ||||
-rw-r--r-- | openbsc/include/openbsc/gprs_llc.h | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/openbsc/include/openbsc/gprs_bssgp.h b/openbsc/include/openbsc/gprs_bssgp.h index 90b945aba..9eaf989af 100644 --- a/openbsc/include/openbsc/gprs_bssgp.h +++ b/openbsc/include/openbsc/gprs_bssgp.h @@ -188,7 +188,8 @@ struct bssgp_bvc_ctx *btsctx_by_bvci_nsei(uint16_t bvci, uint16_t nsei); int gprs_bssgp_rcvmsg(struct msgb *msg); /* BSSGP-DL-UNITDATA.req */ -int gprs_bssgp_tx_dl_ud(struct msgb *msg); +struct sgsn_mm_ctx; +int gprs_bssgp_tx_dl_ud(struct msgb *msg, struct sgsn_mm_ctx *mmctx); uint16_t bssgp_parse_cell_id(struct gprs_ra_id *raid, const uint8_t *buf); diff --git a/openbsc/include/openbsc/gprs_llc.h b/openbsc/include/openbsc/gprs_llc.h index 4828a8fe9..213ef7bf5 100644 --- a/openbsc/include/openbsc/gprs_llc.h +++ b/openbsc/include/openbsc/gprs_llc.h @@ -103,7 +103,8 @@ extern struct llist_head gprs_llc_lles; int gprs_llc_rcvmsg(struct msgb *msg, struct tlv_parsed *tv); /* LL-UNITDATA.req */ -int gprs_llc_tx_ui(struct msgb *msg, uint8_t sapi, int command); +int gprs_llc_tx_ui(struct msgb *msg, uint8_t sapi, int command, + void *mmctx); int gprs_llc_vty_init(void); |