pespin has uploaded this change for review. (
https://gerrit.osmocom.org/c/libosmo-gprs/+/32293 )
Change subject: Rename internal g_ctx -> g_{layer_name}_ctx
......................................................................
Rename internal g_ctx -> g_{layer_name}_ctx
Otherwise if a test includes {layer_name}_private.h from several
libraries to use private APIs it will fail due to colliding g_ctx
pointers of different types.
Change-Id: Ib8a844551452b79bdb3a81968ffc1fd42ee1c5d9
---
M include/osmocom/gprs/gmm/gmm_private.h
M include/osmocom/gprs/llc/llc_private.h
M include/osmocom/gprs/rlcmac/rlcmac_private.h
M include/osmocom/gprs/sm/sm_private.h
M include/osmocom/gprs/sndcp/sndcp_private.h
M src/gmm/gmm.c
M src/gmm/gmm_ms_fsm.c
M src/gmm/gmm_prim.c
M src/llc/llc.c
M src/llc/llc_ll.c
M src/llc/llc_llgmm.c
M src/llc/llc_prim.c
M src/rlcmac/gre.c
M src/rlcmac/rlcmac.c
M src/rlcmac/rlcmac_prim.c
M src/rlcmac/sched.c
M src/rlcmac/tbf.c
M src/rlcmac/tbf_dl.c
M src/rlcmac/tbf_dl_ass_fsm.c
M src/rlcmac/tbf_dl_fsm.c
M src/rlcmac/tbf_ul.c
M src/rlcmac/tbf_ul_ass_fsm.c
M src/rlcmac/tbf_ul_fsm.c
M src/sm/sm.c
M src/sm/sm_ms_fsm.c
M src/sm/sm_prim.c
M src/sndcp/sndcp.c
M src/sndcp/sndcp_prim.c
28 files changed, 250 insertions(+), 237 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-gprs refs/changes/93/32293/1
diff --git a/include/osmocom/gprs/gmm/gmm_private.h
b/include/osmocom/gprs/gmm/gmm_private.h
index 473c670..21c7467 100644
--- a/include/osmocom/gprs/gmm/gmm_private.h
+++ b/include/osmocom/gprs/gmm/gmm_private.h
@@ -46,7 +46,7 @@
struct llist_head gmme_list; /* list of struct gprs_gmm_entity->list */
};
-extern struct gprs_gmm_ctx *g_ctx;
+extern struct gprs_gmm_ctx *g_gmm_ctx;
/* GMM Entity: */
struct gprs_gmm_entity {
diff --git a/include/osmocom/gprs/llc/llc_private.h
b/include/osmocom/gprs/llc/llc_private.h
index 1db33b6..3f7ee15 100644
--- a/include/osmocom/gprs/llc/llc_private.h
+++ b/include/osmocom/gprs/llc/llc_private.h
@@ -273,7 +273,7 @@
struct llist_head llme_list;
};
-extern struct gprs_llc_ctx *g_ctx;
+extern struct gprs_llc_ctx *g_llc_ctx;
/* llc_bssgp.c */
int gprs_llc_prim_lower_up_bssgp(struct osmo_gprs_llc_prim *llc_prim);
@@ -367,7 +367,7 @@
/* 6.2.2 Command/Response bit (C/R) */
static inline bool gprs_llc_received_cr_is_cmd(uint8_t cr)
{
- if (g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN)
+ if (g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN)
return !cr; /*received from MS */
else
return !!cr; /*received from SGSN */
@@ -376,7 +376,7 @@
static inline void gprs_llc_encode_is_cmd_as_cr(bool is_cmd, uint32_t *flags)
{
- if (g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN)
+ if (g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN)
*flags |= OSMO_GPRS_LLC_PDU_F_CMD_RSP; /*Transmit to MS */
else
*flags &= ~OSMO_GPRS_LLC_PDU_F_CMD_RSP; /* Transmit to SGSN */
diff --git a/include/osmocom/gprs/rlcmac/rlcmac_private.h
b/include/osmocom/gprs/rlcmac/rlcmac_private.h
index cd03066..da7ba67 100644
--- a/include/osmocom/gprs/rlcmac/rlcmac_private.h
+++ b/include/osmocom/gprs/rlcmac/rlcmac_private.h
@@ -82,7 +82,7 @@
SI13_RestOctets_t si13ro;
};
-extern struct gprs_rlcmac_ctx *g_ctx;
+extern struct gprs_rlcmac_ctx *g_rlcmac_ctx;
/* rlcmac.c */
struct gprs_rlcmac_entity *gprs_rlcmac_find_entity_by_tlli(uint32_t tlli);
diff --git a/include/osmocom/gprs/sm/sm_private.h b/include/osmocom/gprs/sm/sm_private.h
index b0043e6..58b4a61 100644
--- a/include/osmocom/gprs/sm/sm_private.h
+++ b/include/osmocom/gprs/sm/sm_private.h
@@ -89,7 +89,7 @@
uint32_t next_sess_id;
};
-extern struct gprs_sm_ctx *g_ctx;
+extern struct gprs_sm_ctx *g_sm_ctx;
/* SM Entity, PDP CTX */
struct gprs_sm_entity {
diff --git a/include/osmocom/gprs/sndcp/sndcp_private.h
b/include/osmocom/gprs/sndcp/sndcp_private.h
index 37fac23..6f4da3b 100644
--- a/include/osmocom/gprs/sndcp/sndcp_private.h
+++ b/include/osmocom/gprs/sndcp/sndcp_private.h
@@ -97,7 +97,7 @@
struct gprs_sndcp_ctx_cfg cfg;
};
-extern struct gprs_sndcp_ctx *g_ctx;
+extern struct gprs_sndcp_ctx *g_sndcp_ctx;
/* A fragment queue header, maintaining list of fragments for one N-PDU */
diff --git a/src/gmm/gmm.c b/src/gmm/gmm.c
index e97b398..fbe7d40 100644
--- a/src/gmm/gmm.c
+++ b/src/gmm/gmm.c
@@ -34,7 +34,7 @@
#include <osmocom/gprs/gmm/gmm_pdu.h>
-struct gprs_gmm_ctx *g_ctx;
+struct gprs_gmm_ctx *g_gmm_ctx;
/* Section 11.2.2 / Table 11.3 GPRS Mobility management timers - MS side */
#define GSM0408_T3310_SECS 15
@@ -82,10 +82,10 @@
{
struct gprs_gmm_entity *gmme;
- while ((gmme = llist_first_entry_or_null(&g_ctx->gmme_list, struct
gprs_gmm_entity, list)))
+ while ((gmme = llist_first_entry_or_null(&g_gmm_ctx->gmme_list, struct
gprs_gmm_entity, list)))
gprs_gmm_gmme_free(gmme);
- talloc_free(g_ctx);
+ talloc_free(g_gmm_ctx);
}
int osmo_gprs_gmm_init(enum osmo_gprs_gmm_location location)
@@ -94,22 +94,22 @@
int rc;
OSMO_ASSERT(location == OSMO_GPRS_GMM_LOCATION_MS || location ==
OSMO_GPRS_GMM_LOCATION_NETWORK)
- if (g_ctx) {
+ if (g_gmm_ctx) {
first_init = false;
gprs_gmm_ctx_free();
}
- g_ctx = talloc_zero(NULL, struct gprs_gmm_ctx);
- g_ctx->location = location;
- g_ctx->T_defs = T_defs_gmm;
- INIT_LLIST_HEAD(&g_ctx->gmme_list);
+ g_gmm_ctx = talloc_zero(NULL, struct gprs_gmm_ctx);
+ g_gmm_ctx->location = location;
+ g_gmm_ctx->T_defs = T_defs_gmm;
+ INIT_LLIST_HEAD(&g_gmm_ctx->gmme_list);
- osmo_tdefs_reset(g_ctx->T_defs);
+ osmo_tdefs_reset(g_gmm_ctx->T_defs);
if (first_init) {
rc = gprs_gmm_ms_fsm_init();
if (rc != 0) {
- TALLOC_FREE(g_ctx);
+ TALLOC_FREE(g_gmm_ctx);
return rc;
}
}
@@ -124,15 +124,15 @@
struct gprs_gmm_entity *gmme;
int ev;
- if (g_ctx->gprs_enabled == enable_gprs)
+ if (g_gmm_ctx->gprs_enabled == enable_gprs)
return;
- g_ctx->gprs_enabled = enable_gprs;
+ g_gmm_ctx->gprs_enabled = enable_gprs;
/* Inform all existing MS: */
ev = enable_gprs ? GPRS_GMM_MS_EV_ENABLE_GPRS_MODE :
GPRS_GMM_MS_EV_DISABLE_GPRS_MODE;
- llist_for_each_entry(gmme, &g_ctx->gmme_list, list)
+ llist_for_each_entry(gmme, &g_gmm_ctx->gmme_list, list)
osmo_fsm_inst_dispatch(gmme->ms_fsm.fi, ev, NULL);
}
@@ -140,7 +140,7 @@
{
struct gprs_gmm_entity *gmme;
- gmme = talloc_zero(g_ctx, struct gprs_gmm_entity);
+ gmme = talloc_zero(g_gmm_ctx, struct gprs_gmm_entity);
if (!gmme)
return NULL;
@@ -151,10 +151,10 @@
/* Initialize timers to default values. They may be overwritten by the
* network later on: */
- gmme->t3302 = osmo_tdef_get(g_ctx->T_defs, 3302, OSMO_TDEF_S, -1);
- gmme->t3346 = osmo_tdef_get(g_ctx->T_defs, 3346, OSMO_TDEF_S, -1);
+ gmme->t3302 = osmo_tdef_get(g_gmm_ctx->T_defs, 3302, OSMO_TDEF_S, -1);
+ gmme->t3346 = osmo_tdef_get(g_gmm_ctx->T_defs, 3346, OSMO_TDEF_S, -1);
- llist_add(&gmme->list, &g_ctx->gmme_list);
+ llist_add(&gmme->list, &g_gmm_ctx->gmme_list);
return gmme;
}
@@ -174,7 +174,7 @@
{
struct gprs_gmm_entity *gmme;
- llist_for_each_entry(gmme, &g_ctx->gmme_list, list) {
+ llist_for_each_entry(gmme, &g_gmm_ctx->gmme_list, list) {
if (gmme->ptmsi == tlli || gmme->old_ptmsi == tlli)
return gmme;
}
diff --git a/src/gmm/gmm_ms_fsm.c b/src/gmm/gmm_ms_fsm.c
index 92bf6f2..902a86f 100644
--- a/src/gmm/gmm_ms_fsm.c
+++ b/src/gmm/gmm_ms_fsm.c
@@ -41,7 +41,7 @@
};
#define gmm_ms_fsm_state_chg(fi, NEXT_STATE) \
- osmo_tdef_fsm_inst_state_chg(fi, NEXT_STATE, gmm_ms_fsm_timeouts, g_ctx->T_defs, -1)
+ osmo_tdef_fsm_inst_state_chg(fi, NEXT_STATE, gmm_ms_fsm_timeouts, g_gmm_ctx->T_defs,
-1)
static int reinit_attach_proc(struct gprs_gmm_ms_fsm_ctx *ctx)
@@ -52,7 +52,7 @@
/* Rearm T3110 */
OSMO_ASSERT(ctx->fi->T == 3110);
- val_sec = osmo_tdef_get(g_ctx->T_defs, ctx->fi->T, OSMO_TDEF_S, -1);
+ val_sec = osmo_tdef_get(g_gmm_ctx->T_defs, ctx->fi->T, OSMO_TDEF_S, -1);
osmo_timer_schedule(&ctx->fi->timer, val_sec, 0);
return gprs_gmm_tx_att_req(ctx->gmme,
ctx->attach.type,
@@ -397,7 +397,7 @@
return -ENODATA;
/* Transition to state GMM-DEREGISTERED right away if GPRS is enabled: */
- if (g_ctx->gprs_enabled)
+ if (g_gmm_ctx->gprs_enabled)
osmo_fsm_inst_dispatch(ctx->fi, GPRS_GMM_MS_EV_ENABLE_GPRS_MODE, NULL);
return 0;
diff --git a/src/gmm/gmm_prim.c b/src/gmm/gmm_prim.c
index 9888e50..69e74a2 100644
--- a/src/gmm/gmm_prim.c
+++ b/src/gmm/gmm_prim.c
@@ -133,22 +133,22 @@
/* Set callback used by GMM layer to push primitives to higher layers in protocol stack
*/
void osmo_gprs_gmm_prim_set_up_cb(osmo_gprs_gmm_prim_up_cb up_cb, void *up_user_data)
{
- g_ctx->gmm_up_cb = up_cb;
- g_ctx->gmm_up_cb_user_data = up_user_data;
+ g_gmm_ctx->gmm_up_cb = up_cb;
+ g_gmm_ctx->gmm_up_cb_user_data = up_user_data;
}
/* Set callback used by GMM layer to push primitives to lower layers in protocol stack
*/
void osmo_gprs_gmm_prim_set_down_cb(osmo_gprs_gmm_prim_down_cb down_cb, void
*down_user_data)
{
- g_ctx->gmm_down_cb = down_cb;
- g_ctx->gmm_down_cb_user_data = down_user_data;
+ g_gmm_ctx->gmm_down_cb = down_cb;
+ g_gmm_ctx->gmm_down_cb_user_data = down_user_data;
}
/* Set callback used by GMM layer to push primitives to LLC lower layer in protocol stack
*/
void osmo_gprs_gmm_prim_set_llc_down_cb(osmo_gprs_gmm_prim_llc_down_cb llc_down_cb, void
*llc_down_user_data)
{
- g_ctx->gmm_llc_down_cb = llc_down_cb;
- g_ctx->gmm_llc_down_cb_user_data = llc_down_user_data;
+ g_gmm_ctx->gmm_llc_down_cb = llc_down_cb;
+ g_gmm_ctx->gmm_llc_down_cb_user_data = llc_down_user_data;
}
/********************************
@@ -342,10 +342,10 @@
int gprs_gmm_prim_call_up_cb(struct osmo_gprs_gmm_prim *gmm_prim)
{
int rc;
- if (g_ctx->gmm_up_cb)
- rc = g_ctx->gmm_up_cb(gmm_prim, g_ctx->gmm_up_cb_user_data);
+ if (g_gmm_ctx->gmm_up_cb)
+ rc = g_gmm_ctx->gmm_up_cb(gmm_prim, g_gmm_ctx->gmm_up_cb_user_data);
else
- rc = gmm_up_cb_dummy(gmm_prim, g_ctx->gmm_up_cb_user_data);
+ rc = gmm_up_cb_dummy(gmm_prim, g_gmm_ctx->gmm_up_cb_user_data);
msgb_free(gmm_prim->oph.msg);
return rc;
}
@@ -356,7 +356,7 @@
int rc;
struct gprs_gmm_entity *gmme;
- gmme = llist_first_entry_or_null(&g_ctx->gmme_list, struct gprs_gmm_entity,
list);
+ gmme = llist_first_entry_or_null(&g_gmm_ctx->gmme_list, struct gprs_gmm_entity,
list);
if (!gmme) {
gmme = gprs_gmm_gmme_alloc();
OSMO_ASSERT(gmme);
@@ -417,7 +417,7 @@
int rc;
struct gprs_gmm_entity *gmme;
- gmme = llist_first_entry_or_null(&g_ctx->gmme_list, struct gprs_gmm_entity,
list);
+ gmme = llist_first_entry_or_null(&g_gmm_ctx->gmme_list, struct gprs_gmm_entity,
list);
if (!gmme) {
gmme = gprs_gmm_gmme_alloc();
OSMO_ASSERT(gmme);
@@ -501,10 +501,10 @@
int gprs_gmm_prim_call_down_cb(struct osmo_gprs_gmm_prim *gmm_prim)
{
int rc;
- if (g_ctx->gmm_down_cb)
- rc = g_ctx->gmm_down_cb(gmm_prim, g_ctx->gmm_down_cb_user_data);
+ if (g_gmm_ctx->gmm_down_cb)
+ rc = g_gmm_ctx->gmm_down_cb(gmm_prim, g_gmm_ctx->gmm_down_cb_user_data);
else
- rc = gmm_down_cb_dummy(gmm_prim, g_ctx->gmm_down_cb_user_data);
+ rc = gmm_down_cb_dummy(gmm_prim, g_gmm_ctx->gmm_down_cb_user_data);
msgb_free(gmm_prim->oph.msg);
return rc;
}
@@ -527,7 +527,7 @@
/* GMM lower layers (LLC) push GMM primitive up to GMM layer: */
int osmo_gprs_gmm_prim_lower_up(struct osmo_gprs_gmm_prim *gmm_prim)
{
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_gmm_ctx);
OSMO_ASSERT(gmm_prim);
struct msgb *msg = gmm_prim->oph.msg;
int rc;
@@ -554,10 +554,10 @@
int gprs_gmm_prim_call_llc_down_cb(struct osmo_gprs_llc_prim *llc_prim)
{
int rc;
- if (g_ctx->gmm_llc_down_cb)
- rc = g_ctx->gmm_llc_down_cb(llc_prim, g_ctx->gmm_llc_down_cb_user_data);
+ if (g_gmm_ctx->gmm_llc_down_cb)
+ rc = g_gmm_ctx->gmm_llc_down_cb(llc_prim, g_gmm_ctx->gmm_llc_down_cb_user_data);
else
- rc = gmm_llc_down_cb_dummy(llc_prim, g_ctx->gmm_llc_down_cb_user_data);
+ rc = gmm_llc_down_cb_dummy(llc_prim, g_gmm_ctx->gmm_llc_down_cb_user_data);
/* Special return value '1' means: do not free */
if (rc != 1)
msgb_free(llc_prim->oph.msg);
@@ -635,7 +635,7 @@
/* GMM lower layers (LLC) push GMM primitive up to GMM layer: */
int osmo_gprs_gmm_prim_llc_lower_up(struct osmo_gprs_llc_prim *llc_prim)
{
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_gmm_ctx);
OSMO_ASSERT(llc_prim);
struct msgb *msg = llc_prim->oph.msg;
int rc;
diff --git a/src/llc/llc.c b/src/llc/llc.c
index 2ad0228..e9e8e3b 100644
--- a/src/llc/llc.c
+++ b/src/llc/llc.c
@@ -34,7 +34,7 @@
#include <osmocom/gprs/llc/llc_private.h>
-struct gprs_llc_ctx *g_ctx;
+struct gprs_llc_ctx *g_llc_ctx;
const struct value_string gprs_llc_llme_state_names[] = {
{ OSMO_GPRS_LLC_LLMS_UNASSIGNED, "UNASSIGNED" },
@@ -125,10 +125,10 @@
{
struct gprs_llc_llme *llme;
- while ((llme = llist_first_entry_or_null(&g_ctx->llme_list, struct gprs_llc_llme,
list)))
+ while ((llme = llist_first_entry_or_null(&g_llc_ctx->llme_list, struct
gprs_llc_llme, list)))
gprs_llc_llme_free(llme);
- talloc_free(g_ctx);
+ talloc_free(g_llc_ctx);
}
int osmo_gprs_llc_init(enum osmo_gprs_llc_location location, const char
*cipher_plugin_path)
@@ -141,12 +141,12 @@
return rc;
}
- if (g_ctx)
+ if (g_llc_ctx)
gprs_llc_ctx_free();
- g_ctx = talloc_zero(NULL, struct gprs_llc_ctx);
- g_ctx->location = location;
- INIT_LLIST_HEAD(&g_ctx->llme_list);
+ g_llc_ctx = talloc_zero(NULL, struct gprs_llc_ctx);
+ g_llc_ctx->location = location;
+ INIT_LLIST_HEAD(&g_llc_ctx->llme_list);
return 0;
}
@@ -167,7 +167,7 @@
struct gprs_llc_llme *llme;
uint32_t i;
- llme = talloc_zero(g_ctx, struct gprs_llc_llme);
+ llme = talloc_zero(g_llc_ctx, struct gprs_llc_llme);
if (!llme)
return NULL;
@@ -180,7 +180,7 @@
for (i = 0; i < ARRAY_SIZE(llme->lle); i++)
lle_init(llme, i);
- llist_add(&llme->list, &g_ctx->llme_list);
+ llist_add(&llme->list, &g_llc_ctx->llme_list);
//llme->comp.proto = gprs_sndcp_comp_alloc(llme);
//llme->comp.data = gprs_sndcp_comp_alloc(llme);
@@ -203,7 +203,7 @@
{
struct gprs_llc_llme *llme;
- llist_for_each_entry(llme, &g_ctx->llme_list, list) {
+ llist_for_each_entry(llme, &g_llc_ctx->llme_list, list) {
if (llme->tlli == tlli || llme->old_tlli == tlli)
return llme;
}
@@ -319,7 +319,7 @@
/* TODO: we are probably missing the ciphering enc part, see osmo-sgsn apply_gea() */
/* LLC payload is put directly below: */
- if (g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN)
+ if (g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN)
llc_prim = gprs_llc_prim_alloc_bssgp_dl_unitdata_req(lle->llme->tlli, NULL, 4096
- sizeof(llc_prim));
else
llc_prim = gprs_llc_prim_alloc_grr_unitdata_req(lle->llme->tlli, NULL, 4096 -
sizeof(llc_prim));
@@ -333,7 +333,7 @@
return rc;
}
- if (g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN) {
+ if (g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN) {
llc_prim->bssgp.ll_pdu = msgb_l3(msg);
llc_prim->bssgp.ll_pdu_len = msgb_l3len(msg);
} else {
diff --git a/src/llc/llc_ll.c b/src/llc/llc_ll.c
index 51038af..72ef889 100644
--- a/src/llc/llc_ll.c
+++ b/src/llc/llc_ll.c
@@ -244,18 +244,18 @@
int rc;
switch (OSMO_PRIM_HDR(&llc_prim->oph)) {
case OSMO_PRIM(OSMO_GPRS_LLC_LL_XID, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
- g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
+ g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = llc_prim_handle_ll_xid_req(llc_prim);
break;
case OSMO_PRIM(OSMO_GPRS_LLC_LL_XID, PRIM_OP_RESPONSE):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
- g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
+ g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = llc_prim_handle_ll_xid_resp(llc_prim);
break;
case OSMO_PRIM(OSMO_GPRS_LLC_LL_UNITDATA, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
- g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
+ g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = llc_prim_handle_ll_unitdata_req(llc_prim);
break;
/* TODO: others */
diff --git a/src/llc/llc_llgmm.c b/src/llc/llc_llgmm.c
index 9797456..cd8c189 100644
--- a/src/llc/llc_llgmm.c
+++ b/src/llc/llc_llgmm.c
@@ -244,40 +244,40 @@
int rc;
switch (OSMO_PRIM_HDR(&llc_prim->oph)) {
case OSMO_PRIM(OSMO_GPRS_LLC_LLGMM_ASSIGN, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
- g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
+ g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = llc_prim_handle_llgm_assign_req(llc_prim);
break;
case OSMO_PRIM(OSMO_GPRS_LLC_LLGMM_RESET, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = llc_prim_handle_llgm_reset_req(llc_prim);
break;
case OSMO_PRIM(OSMO_GPRS_LLC_LLGMM_TRIGGER, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS);
rc = gprs_llc_prim_handle_unsupported(llc_prim);
break;
case OSMO_PRIM(OSMO_GPRS_LLC_LLGMM_SUSPEND, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
- g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
+ g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = gprs_llc_prim_handle_unsupported(llc_prim);
break;
case OSMO_PRIM(OSMO_GPRS_LLC_LLGMM_RESUME, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
- g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
+ g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = gprs_llc_prim_handle_unsupported(llc_prim);
break;
case OSMO_PRIM(OSMO_GPRS_LLC_LLGMM_IOV, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = gprs_llc_prim_handle_unsupported(llc_prim);
break;
case OSMO_PRIM(OSMO_GPRS_LLC_LLGMM_PSHO, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
- g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
+ g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = gprs_llc_prim_handle_unsupported(llc_prim);
break;
case OSMO_PRIM(OSMO_GPRS_LLC_LLGMM_ASSIGN_UP, PRIM_OP_REQUEST):
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
- g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS ||
+ g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = gprs_llc_prim_handle_unsupported(llc_prim);
break;
default:
diff --git a/src/llc/llc_prim.c b/src/llc/llc_prim.c
index d653f03..4b520ad 100644
--- a/src/llc/llc_prim.c
+++ b/src/llc/llc_prim.c
@@ -83,15 +83,15 @@
/* Set callback used by LLC layer to push primitives to higher layers in protocol stack
*/
void osmo_gprs_llc_prim_set_up_cb(osmo_gprs_llc_prim_up_cb up_cb, void *up_user_data)
{
- g_ctx->llc_up_cb = up_cb;
- g_ctx->llc_up_cb_user_data = up_user_data;
+ g_llc_ctx->llc_up_cb = up_cb;
+ g_llc_ctx->llc_up_cb_user_data = up_user_data;
}
/* Set callback used by LLC layer to push primitives to lower layers in protocol stack
*/
void osmo_gprs_llc_prim_set_down_cb(osmo_gprs_llc_prim_down_cb down_cb, void
*down_user_data)
{
- g_ctx->llc_down_cb = down_cb;
- g_ctx->llc_down_cb_user_data = down_user_data;
+ g_llc_ctx->llc_down_cb = down_cb;
+ g_llc_ctx->llc_down_cb_user_data = down_user_data;
}
/********************************
@@ -138,10 +138,10 @@
int gprs_llc_prim_call_up_cb(struct osmo_gprs_llc_prim *llc_prim)
{
int rc;
- if (g_ctx->llc_up_cb)
- rc = g_ctx->llc_up_cb(llc_prim, g_ctx->llc_up_cb_user_data);
+ if (g_llc_ctx->llc_up_cb)
+ rc = g_llc_ctx->llc_up_cb(llc_prim, g_llc_ctx->llc_up_cb_user_data);
else
- rc = llc_up_cb_dummy(llc_prim, g_ctx->llc_up_cb_user_data);
+ rc = llc_up_cb_dummy(llc_prim, g_llc_ctx->llc_up_cb_user_data);
/* Special return value '1' means: do not free */
if (rc != 1)
msgb_free(llc_prim->oph.msg);
@@ -152,7 +152,7 @@
int osmo_gprs_llc_prim_upper_down(struct osmo_gprs_llc_prim *llc_prim)
{
int rc;
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_llc_ctx);
LOGLLC(LOGL_INFO, "Rx from upper layers: %s\n",
osmo_gprs_llc_prim_name(llc_prim));
@@ -176,10 +176,10 @@
int gprs_llc_prim_call_down_cb(struct osmo_gprs_llc_prim *llc_prim)
{
int rc;
- if (g_ctx->llc_down_cb)
- rc = g_ctx->llc_down_cb(llc_prim, g_ctx->llc_down_cb_user_data);
+ if (g_llc_ctx->llc_down_cb)
+ rc = g_llc_ctx->llc_down_cb(llc_prim, g_llc_ctx->llc_down_cb_user_data);
else
- rc = llc_down_cb_dummy(llc_prim, g_ctx->llc_down_cb_user_data);
+ rc = llc_down_cb_dummy(llc_prim, g_llc_ctx->llc_down_cb_user_data);
/* Special return value '1' means: do not free */
if (rc != 1)
msgb_free(llc_prim->oph.msg);
@@ -191,7 +191,7 @@
/* LLC lower layers push LLC primitive up to LLC layer: */
int osmo_gprs_llc_prim_lower_up(struct osmo_gprs_llc_prim *llc_prim)
{
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_llc_ctx);
OSMO_ASSERT(llc_prim);
struct msgb *msg = llc_prim->oph.msg;
int rc;
@@ -200,11 +200,11 @@
switch (llc_prim->oph.sap) {
case OSMO_GPRS_LLC_SAP_GRR:
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_MS);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_MS);
rc = gprs_llc_prim_lower_up_grr(llc_prim);
break;
case OSMO_GPRS_LLC_SAP_BSSGP:
- OSMO_ASSERT(g_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
+ OSMO_ASSERT(g_llc_ctx->location == OSMO_GPRS_LLC_LOCATION_SGSN);
rc = gprs_llc_prim_lower_up_bssgp(llc_prim);
break;
default:
diff --git a/src/rlcmac/gre.c b/src/rlcmac/gre.c
index 2bab3c1..fe18a43 100644
--- a/src/rlcmac/gre.c
+++ b/src/rlcmac/gre.c
@@ -40,7 +40,7 @@
struct gprs_rlcmac_entity *gre;
int rc;
- gre = talloc_zero(g_ctx, struct gprs_rlcmac_entity);
+ gre = talloc_zero(g_rlcmac_ctx, struct gprs_rlcmac_entity);
if (!gre)
return NULL;
@@ -48,15 +48,15 @@
if (!gre->llc_queue)
goto err_free_gre;
gprs_rlcmac_llc_queue_set_codel_params(gre->llc_queue,
- g_ctx->cfg.codel.use,
- g_ctx->cfg.codel.interval_msec);
+ g_rlcmac_ctx->cfg.codel.use,
+ g_rlcmac_ctx->cfg.codel.interval_msec);
rc = gprs_rlcmac_tbf_dl_ass_fsm_constructor(&gre->dl_tbf_dl_ass_fsm, gre);
if (rc < 0)
goto err_free_gre;
gre->tlli = tlli;
- llist_add_tail(&gre->entry, &g_ctx->gre_list);
+ llist_add_tail(&gre->entry, &g_rlcmac_ctx->gre_list);
return gre;
diff --git a/src/rlcmac/rlcmac.c b/src/rlcmac/rlcmac.c
index 574ff5a..00b45ff 100644
--- a/src/rlcmac/rlcmac.c
+++ b/src/rlcmac/rlcmac.c
@@ -40,7 +40,7 @@
#define GPRS_CODEL_SLOW_INTERVAL_MS 4000
-struct gprs_rlcmac_ctx *g_ctx;
+struct gprs_rlcmac_ctx *g_rlcmac_ctx;
/* TS 44.060 Table 13.1.1 */
static struct osmo_tdef T_defs_rlcmac[] = {
@@ -56,10 +56,10 @@
{
struct gprs_rlcmac_entity *gre;
- while ((gre = llist_first_entry_or_null(&g_ctx->gre_list, struct
gprs_rlcmac_entity, entry)))
+ while ((gre = llist_first_entry_or_null(&g_rlcmac_ctx->gre_list, struct
gprs_rlcmac_entity, entry)))
gprs_rlcmac_entity_free(gre);
- talloc_free(g_ctx);
+ talloc_free(g_rlcmac_ctx);
}
int osmo_gprs_rlcmac_init(enum osmo_gprs_rlcmac_location location)
@@ -69,48 +69,48 @@
unsigned int i;
OSMO_ASSERT(location == OSMO_GPRS_RLCMAC_LOCATION_MS || location ==
OSMO_GPRS_RLCMAC_LOCATION_PCU)
- if (g_ctx) {
+ if (g_rlcmac_ctx) {
gprs_rlcmac_ctx_free();
first_init = false;
}
- g_ctx = talloc_zero(NULL, struct gprs_rlcmac_ctx);
- g_ctx->cfg.location = location;
- g_ctx->cfg.codel.use = true;
- g_ctx->cfg.codel.interval_msec = GPRS_CODEL_SLOW_INTERVAL_MS;
- g_ctx->cfg.egprs_arq_type = GPRS_RLCMAC_EGPRS_ARQ1;
- g_ctx->cfg.ul_tbf_preemptive_retransmission = true;
- g_ctx->T_defs = T_defs_rlcmac;
- INIT_LLIST_HEAD(&g_ctx->gre_list);
+ g_rlcmac_ctx = talloc_zero(NULL, struct gprs_rlcmac_ctx);
+ g_rlcmac_ctx->cfg.location = location;
+ g_rlcmac_ctx->cfg.codel.use = true;
+ g_rlcmac_ctx->cfg.codel.interval_msec = GPRS_CODEL_SLOW_INTERVAL_MS;
+ g_rlcmac_ctx->cfg.egprs_arq_type = GPRS_RLCMAC_EGPRS_ARQ1;
+ g_rlcmac_ctx->cfg.ul_tbf_preemptive_retransmission = true;
+ g_rlcmac_ctx->T_defs = T_defs_rlcmac;
+ INIT_LLIST_HEAD(&g_rlcmac_ctx->gre_list);
- osmo_tdefs_reset(g_ctx->T_defs);
+ osmo_tdefs_reset(g_rlcmac_ctx->T_defs);
if (first_init) {
rc = gprs_rlcmac_tbf_dl_ass_fsm_init();
if (rc != 0) {
- TALLOC_FREE(g_ctx);
+ TALLOC_FREE(g_rlcmac_ctx);
return rc;
}
rc = gprs_rlcmac_tbf_dl_fsm_init();
if (rc != 0) {
- TALLOC_FREE(g_ctx);
+ TALLOC_FREE(g_rlcmac_ctx);
return rc;
}
rc = gprs_rlcmac_tbf_ul_fsm_init();
if (rc != 0) {
- TALLOC_FREE(g_ctx);
+ TALLOC_FREE(g_rlcmac_ctx);
return rc;
}
rc = gprs_rlcmac_tbf_ul_ass_fsm_init();
if (rc != 0) {
- TALLOC_FREE(g_ctx);
+ TALLOC_FREE(g_rlcmac_ctx);
return rc;
}
}
- for (i = 0; i < ARRAY_SIZE(g_ctx->sched.ulc); i++) {
- g_ctx->sched.ulc[i] = gprs_rlcmac_pdch_ulc_alloc(g_ctx, i);
- OSMO_ASSERT(g_ctx->sched.ulc[i]);
+ for (i = 0; i < ARRAY_SIZE(g_rlcmac_ctx->sched.ulc); i++) {
+ g_rlcmac_ctx->sched.ulc[i] = gprs_rlcmac_pdch_ulc_alloc(g_rlcmac_ctx, i);
+ OSMO_ASSERT(g_rlcmac_ctx->sched.ulc[i]);
}
return 0;
@@ -126,8 +126,8 @@
if (interval_msec == 0)
interval_msec = GPRS_CODEL_SLOW_INTERVAL_MS;
- g_ctx->cfg.codel.use = use;
- g_ctx->cfg.codel.interval_msec = interval_msec;
+ g_rlcmac_ctx->cfg.codel.use = use;
+ g_rlcmac_ctx->cfg.codel.interval_msec = interval_msec;
return 0;
}
@@ -135,7 +135,7 @@
{
struct gprs_rlcmac_entity *gre;
- llist_for_each_entry(gre, &g_ctx->gre_list, entry) {
+ llist_for_each_entry(gre, &g_rlcmac_ctx->gre_list, entry) {
if (gre->tlli == tlli)
return gre;
}
@@ -146,7 +146,7 @@
{
struct gprs_rlcmac_entity *gre;
- llist_for_each_entry(gre, &g_ctx->gre_list, entry) {
+ llist_for_each_entry(gre, &g_rlcmac_ctx->gre_list, entry) {
if (!gre->dl_tbf)
continue;
if (gre->dl_tbf->cur_alloc.dl_tfi != dl_tfi)
@@ -160,7 +160,7 @@
{
struct gprs_rlcmac_entity *gre;
- llist_for_each_entry(gre, &g_ctx->gre_list, entry) {
+ llist_for_each_entry(gre, &g_rlcmac_ctx->gre_list, entry) {
if (!gre->ul_tbf)
continue;
if (gre->ul_tbf->cur_alloc.ul_tfi != ul_tfi)
@@ -182,7 +182,7 @@
.iaro = iaro
};
- llist_for_each_entry(gre, &g_ctx->gre_list, entry) {
+ llist_for_each_entry(gre, &g_rlcmac_ctx->gre_list, entry) {
ul_tbf = gre->ul_tbf;
if (!ul_tbf)
continue;
@@ -309,9 +309,9 @@
int rc;
LOGRLCMAC(LOGL_DEBUG, "Rx SI13 from lower layers\n");
- memcpy(g_ctx->si13, si13, GSM_MACBLOCK_LEN);
+ memcpy(g_rlcmac_ctx->si13, si13, GSM_MACBLOCK_LEN);
- rc = osmo_gprs_rlcmac_decode_si13ro(&g_ctx->si13ro, si13->rest_octets,
+ rc = osmo_gprs_rlcmac_decode_si13ro(&g_rlcmac_ctx->si13ro, si13->rest_octets,
GSM_MACBLOCK_LEN - offsetof(struct gsm48_system_information_type_13,
rest_octets));
if (rc < 0) {
LOGRLCMAC(LOGL_ERROR, "Error decoding SI13: %s\n",
@@ -319,16 +319,16 @@
return rc;
}
- g_ctx->si13_available = true;
+ g_rlcmac_ctx->si13_available = true;
/* Update tdef for T3168:
* TS 44.060 Table 12.24.2: Range: 0 to 7. The timeout value is given as the binary
value plus one in units of 500 ms. */
- osmo_tdef_set(g_ctx->T_defs, 3168,
- (g_ctx->si13ro.u.PBCCH_Not_present.GPRS_Cell_Options.T3168 + 1) * 500,
+ osmo_tdef_set(g_rlcmac_ctx->T_defs, 3168,
+ (g_rlcmac_ctx->si13ro.u.PBCCH_Not_present.GPRS_Cell_Options.T3168 + 1) * 500,
OSMO_TDEF_MS);
/* TODO: Update tdef for T3192 as per TS 44.060 Table 12.24.2
- * osmo_tdef_set(g_ctx->T_defs, 3192,
si13ro.u.PBCCH_Not_present.GPRS_Cell_Options.T3192, enum osmo_tdef_unit val_unit);
+ * osmo_tdef_set(g_rlcmac_ctx->T_defs, 3192,
si13ro.u.PBCCH_Not_present.GPRS_Cell_Options.T3192, enum osmo_tdef_unit val_unit);
*/
return rc;
@@ -402,7 +402,7 @@
if (dl_block->SP) {
uint32_t poll_fn = rrbp2fn(rlcmac_prim->l1ctl.pdch_data_ind.fn, dl_block->RRBP);
- gprs_rlcmac_pdch_ulc_reserve(g_ctx->sched.ulc[rlcmac_prim->l1ctl.pdch_data_ind.ts_nr],
+ gprs_rlcmac_pdch_ulc_reserve(g_rlcmac_ctx->sched.ulc[rlcmac_prim->l1ctl.pdch_data_ind.ts_nr],
poll_fn,
GPRS_RLCMAC_PDCH_ULC_POLL_DL_ASS,
gre);
@@ -429,7 +429,7 @@
/* If RRBP contains valid data, schedule a response (PKT CONTROL ACK or PKT RESOURCE
REQ). */
if (dl_block->SP) {
uint32_t poll_fn = rrbp2fn(rlcmac_prim->l1ctl.pdch_data_ind.fn, dl_block->RRBP);
- gprs_rlcmac_pdch_ulc_reserve(g_ctx->sched.ulc[rlcmac_prim->l1ctl.pdch_data_ind.ts_nr],
poll_fn,
+ gprs_rlcmac_pdch_ulc_reserve(g_rlcmac_ctx->sched.ulc[rlcmac_prim->l1ctl.pdch_data_ind.ts_nr],
poll_fn,
GPRS_RLCMAC_PDCH_ULC_POLL_UL_ACK,
ul_tbf_as_tbf(ul_tbf));
}
@@ -485,11 +485,11 @@
size_t max_len = gprs_rlcmac_mcs_max_bytes_dl(GPRS_RLCMAC_CS_1);
int rc;
- bv = bitvec_alloc(max_len, g_ctx);
+ bv = bitvec_alloc(max_len, g_rlcmac_ctx);
OSMO_ASSERT(bv);
bitvec_unpack(bv, rlcmac_prim->l1ctl.pdch_data_ind.data);
- dl_ctrl_block = (RlcMacDownlink_t *)talloc_zero(g_ctx, RlcMacDownlink_t);
+ dl_ctrl_block = (RlcMacDownlink_t *)talloc_zero(g_rlcmac_ctx, RlcMacDownlink_t);
OSMO_ASSERT(dl_ctrl_block);
rc = osmo_gprs_rlcmac_decode_downlink(bv, dl_ctrl_block);
if (rc < 0) {
diff --git a/src/rlcmac/rlcmac_prim.c b/src/rlcmac/rlcmac_prim.c
index 8f27ff7..e6f151a 100644
--- a/src/rlcmac/rlcmac_prim.c
+++ b/src/rlcmac/rlcmac_prim.c
@@ -112,15 +112,15 @@
/* Set callback used by LLC layer to push primitives to higher layers in protocol stack
*/
void osmo_gprs_rlcmac_prim_set_up_cb(osmo_gprs_rlcmac_prim_up_cb up_cb, void
*up_user_data)
{
- g_ctx->rlcmac_up_cb = up_cb;
- g_ctx->rlcmac_up_cb_user_data = up_user_data;
+ g_rlcmac_ctx->rlcmac_up_cb = up_cb;
+ g_rlcmac_ctx->rlcmac_up_cb_user_data = up_user_data;
}
/* Set callback used by LLC layer to push primitives to lower layers in protocol stack
*/
void osmo_gprs_rlcmac_prim_set_down_cb(osmo_gprs_rlcmac_prim_down_cb down_cb, void
*down_user_data)
{
- g_ctx->rlcmac_down_cb = down_cb;
- g_ctx->rlcmac_down_cb_user_data = down_user_data;
+ g_rlcmac_ctx->rlcmac_down_cb = down_cb;
+ g_rlcmac_ctx->rlcmac_down_cb_user_data = down_user_data;
}
/********************************
@@ -355,10 +355,10 @@
int gprs_rlcmac_prim_call_up_cb(struct osmo_gprs_rlcmac_prim *rlcmac_prim)
{
int rc;
- if (g_ctx->rlcmac_up_cb)
- rc = g_ctx->rlcmac_up_cb(rlcmac_prim, g_ctx->rlcmac_up_cb_user_data);
+ if (g_rlcmac_ctx->rlcmac_up_cb)
+ rc = g_rlcmac_ctx->rlcmac_up_cb(rlcmac_prim,
g_rlcmac_ctx->rlcmac_up_cb_user_data);
else
- rc = rlcmac_up_cb_dummy(rlcmac_prim, g_ctx->rlcmac_up_cb_user_data);
+ rc = rlcmac_up_cb_dummy(rlcmac_prim, g_rlcmac_ctx->rlcmac_up_cb_user_data);
/* Special return value '1' means: do not free */
if (rc != 1)
msgb_free(rlcmac_prim->oph.msg);
@@ -447,10 +447,10 @@
LOGRLCMAC(LOGL_DEBUG, "Tx to lower layers: %s\n",
osmo_gprs_rlcmac_prim_name(rlcmac_prim));
- if (g_ctx->rlcmac_down_cb)
- rc = g_ctx->rlcmac_down_cb(rlcmac_prim, g_ctx->rlcmac_down_cb_user_data);
+ if (g_rlcmac_ctx->rlcmac_down_cb)
+ rc = g_rlcmac_ctx->rlcmac_down_cb(rlcmac_prim,
g_rlcmac_ctx->rlcmac_down_cb_user_data);
else
- rc = rlcmac_down_cb_dummy(rlcmac_prim, g_ctx->rlcmac_down_cb_user_data);
+ rc = rlcmac_down_cb_dummy(rlcmac_prim, g_rlcmac_ctx->rlcmac_down_cb_user_data);
/* Special return value '1' means: do not free */
if (rc != 1)
msgb_free(rlcmac_prim->oph.msg);
@@ -551,7 +551,7 @@
int osmo_gprs_rlcmac_prim_lower_up(struct osmo_gprs_rlcmac_prim *rlcmac_prim)
{
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_rlcmac_ctx);
OSMO_ASSERT(rlcmac_prim);
struct msgb *msg = rlcmac_prim->oph.msg;
int rc;
diff --git a/src/rlcmac/sched.c b/src/rlcmac/sched.c
index 50a3910..25ee6da 100644
--- a/src/rlcmac/sched.c
+++ b/src/rlcmac/sched.c
@@ -72,7 +72,7 @@
struct gprs_rlcmac_ul_tbf *ul_tbf;
struct gprs_rlcmac_pdch_ulc_node *node;
- node = gprs_rlcmac_pdch_ulc_get_node(g_ctx->sched.ulc[bi->ts], bi->fn);
+ node = gprs_rlcmac_pdch_ulc_get_node(g_rlcmac_ctx->sched.ulc[bi->ts], bi->fn);
if (node) {
switch (node->reason) {
case GPRS_RLCMAC_PDCH_ULC_POLL_UL_ASS:
@@ -116,11 +116,11 @@
/* TODO */
break;
}
- gprs_rlcmac_pdch_ulc_release_node(g_ctx->sched.ulc[bi->ts], node);
+ gprs_rlcmac_pdch_ulc_release_node(g_rlcmac_ctx->sched.ulc[bi->ts], node);
}
/* Iterate over UL TBFs: */
- llist_for_each_entry(gre, &g_ctx->gre_list, entry) {
+ llist_for_each_entry(gre, &g_rlcmac_ctx->gre_list, entry) {
if (!gre->ul_tbf)
continue;
ul_tbf = gre->ul_tbf;
@@ -134,7 +134,7 @@
static struct gprs_rlcmac_ul_tbf *find_requested_ul_tbf_for_data(const struct
gprs_rlcmac_rts_block_ind *bi)
{
struct gprs_rlcmac_entity *gre;
- llist_for_each_entry(gre, &g_ctx->gre_list, entry) {
+ llist_for_each_entry(gre, &g_rlcmac_ctx->gre_list, entry) {
if (!gre->ul_tbf)
continue;
if (gprs_rlcmac_ul_tbf_data_rts(gre->ul_tbf, bi))
@@ -146,7 +146,7 @@
static struct gprs_rlcmac_ul_tbf *find_requested_ul_tbf_for_dummy(const struct
gprs_rlcmac_rts_block_ind *bi)
{
struct gprs_rlcmac_entity *gre;
- llist_for_each_entry(gre, &g_ctx->gre_list, entry) {
+ llist_for_each_entry(gre, &g_rlcmac_ctx->gre_list, entry) {
if (!gre->ul_tbf)
continue;
if (gprs_rlcmac_ul_tbf_dummy_rts(gre->ul_tbf, bi))
@@ -268,7 +268,7 @@
{
struct gprs_rlcmac_entity *gre;
- llist_for_each_entry(gre, &g_ctx->gre_list, entry) {
+ llist_for_each_entry(gre, &g_rlcmac_ctx->gre_list, entry) {
if (gre->ul_tbf &&
gprs_rlcmac_tbf_ul_ass_waiting_tbf_starting_time(gre->ul_tbf))
gprs_rlcmac_tbf_ul_ass_fn_tick(gre->ul_tbf, bi->fn, bi->ts);
if (gprs_rlcmac_tbf_start_pending(&gre->dl_tbf_dl_ass_fsm))
@@ -307,6 +307,6 @@
msgb_free(msg);
ret_rc:
- gprs_rlcmac_pdch_ulc_expire_fn(g_ctx->sched.ulc[bi->ts], bi->fn);
+ gprs_rlcmac_pdch_ulc_expire_fn(g_rlcmac_ctx->sched.ulc[bi->ts], bi->fn);
return rc;
}
diff --git a/src/rlcmac/tbf.c b/src/rlcmac/tbf.c
index a88e924..2168801 100644
--- a/src/rlcmac/tbf.c
+++ b/src/rlcmac/tbf.c
@@ -36,8 +36,8 @@
void gprs_rlcmac_tbf_destructor(struct gprs_rlcmac_tbf *tbf)
{
unsigned int i;
- for (i = 0; i < ARRAY_SIZE(g_ctx->sched.ulc); i++)
- gprs_rlcmac_pdch_ulc_release_tbf(g_ctx->sched.ulc[i], tbf);
+ for (i = 0; i < ARRAY_SIZE(g_rlcmac_ctx->sched.ulc); i++)
+ gprs_rlcmac_pdch_ulc_release_tbf(g_rlcmac_ctx->sched.ulc[i], tbf);
}
void gprs_rlcmac_tbf_free(struct gprs_rlcmac_tbf *tbf)
diff --git a/src/rlcmac/tbf_dl.c b/src/rlcmac/tbf_dl.c
index 4ed0bfd..741f2a0 100644
--- a/src/rlcmac/tbf_dl.c
+++ b/src/rlcmac/tbf_dl.c
@@ -42,7 +42,7 @@
if (rc < 0)
goto err_tbf_destruct;
- dl_tbf->tbf.nr = g_ctx->next_dl_tbf_nr++;
+ dl_tbf->tbf.nr = g_rlcmac_ctx->next_dl_tbf_nr++;
dl_tbf->dlw = gprs_rlcmac_rlc_dl_window_alloc(dl_tbf);
OSMO_ASSERT(dl_tbf->dlw);
@@ -298,7 +298,7 @@
/* If RRBP contains valid data, schedule a DL ACK/NACK. */
if (rlc->es_p) {
uint32_t poll_fn = rrbp2fn(fn, rlc->rrbp);
- gprs_rlcmac_pdch_ulc_reserve(g_ctx->sched.ulc[ts_nr], poll_fn,
+ gprs_rlcmac_pdch_ulc_reserve(g_rlcmac_ctx->sched.ulc[ts_nr], poll_fn,
GPRS_RLCMAC_PDCH_ULC_POLL_DL_ACK,
dl_tbf_as_tbf(dl_tbf));
}
diff --git a/src/rlcmac/tbf_dl_ass_fsm.c b/src/rlcmac/tbf_dl_ass_fsm.c
index 365772a..4bb6ae9 100644
--- a/src/rlcmac/tbf_dl_ass_fsm.c
+++ b/src/rlcmac/tbf_dl_ass_fsm.c
@@ -55,7 +55,7 @@
#define tbf_dl_ass_fsm_state_chg(fi, NEXT_STATE) \
osmo_tdef_fsm_inst_state_chg(fi, NEXT_STATE, \
tbf_dl_ass_fsm_timeouts, \
- g_ctx->T_defs, \
+ g_rlcmac_ctx->T_defs, \
-1)
static int handle_imm_ass(struct gprs_rlcmac_tbf_dl_ass_fsm_ctx *ctx, const struct
tbf_start_ev_rx_ccch_imm_ass_ctx *d)
diff --git a/src/rlcmac/tbf_dl_fsm.c b/src/rlcmac/tbf_dl_fsm.c
index e4a4cf2..250b66c 100644
--- a/src/rlcmac/tbf_dl_fsm.c
+++ b/src/rlcmac/tbf_dl_fsm.c
@@ -47,7 +47,7 @@
#define tbf_dl_fsm_state_chg(fi, NEXT_STATE) \
osmo_tdef_fsm_inst_state_chg(fi, NEXT_STATE, \
tbf_dl_fsm_timeouts, \
- g_ctx->T_defs, \
+ g_rlcmac_ctx->T_defs, \
-1)
static void st_new(struct osmo_fsm_inst *fi, uint32_t event, void *data)
diff --git a/src/rlcmac/tbf_ul.c b/src/rlcmac/tbf_ul.c
index 143c880..8e03207 100644
--- a/src/rlcmac/tbf_ul.c
+++ b/src/rlcmac/tbf_ul.c
@@ -48,7 +48,7 @@
if (rc < 0)
goto err_state_fsm_destruct;
- ul_tbf->tbf.nr = g_ctx->next_ul_tbf_nr++;
+ ul_tbf->tbf.nr = g_rlcmac_ctx->next_ul_tbf_nr++;
ul_tbf->tx_cs = GPRS_RLCMAC_CS_1;
ul_tbf->ulw = gprs_rlcmac_rlc_ul_window_alloc(ul_tbf);
@@ -121,8 +121,8 @@
/* 3GPP TS 44.060 13.3:
* N3104_MAX = 3 * (BS_CV_MAX + 3) * number of uplink timeslots assigned */
/* If we didn't receive SI13 yet, use maximum value bs_cv_max in range 0..15 */
- uint8_t bs_cv_max = g_ctx->si13_available ?
- g_ctx->si13ro.u.PBCCH_Not_present.GPRS_Cell_Options.BS_CV_MAX :
+ uint8_t bs_cv_max = g_rlcmac_ctx->si13_available ?
+ g_rlcmac_ctx->si13ro.u.PBCCH_Not_present.GPRS_Cell_Options.BS_CV_MAX :
15;
return 3 * (bs_cv_max + 3) * ul_tbf->cur_alloc.num_ts;
}
@@ -522,7 +522,7 @@
if (ul_tbf->tbf.is_egprs) {
/* Table 8.1.1.2 and Table 8.1.1.1 of 44.060 */
blk->cs_current_trans = gprs_rlcmac_get_retx_mcs(blk->cs_init, tx_cs,
- g_ctx->cfg.egprs_arq_type == GPRS_RLCMAC_EGPRS_ARQ1);
+ g_rlcmac_ctx->cfg.egprs_arq_type == GPRS_RLCMAC_EGPRS_ARQ1);
LOGPTBFUL(ul_tbf, LOGL_DEBUG,
"initial_cs_dl(%s) last_mcs(%s) demanded_mcs(%s) cs_trans(%s) arq_type(%d)
bsn(%d)\n",
@@ -530,7 +530,7 @@
gprs_rlcmac_mcs_name(blk->cs_last),
gprs_rlcmac_mcs_name(tx_cs),
gprs_rlcmac_mcs_name(blk->cs_current_trans),
- g_ctx->cfg.egprs_arq_type, bsn);
+ g_rlcmac_ctx->cfg.egprs_arq_type, bsn);
/* TODO: Need to remove this check when MCS-8 -> MCS-6
* transistion is handled.
@@ -571,7 +571,7 @@
force_data_len != -1 ? " (forced)" : "");
bsn = create_new_bsn(ul_tbf, bi, tx_cs);
- } else if (g_ctx->cfg.ul_tbf_preemptive_retransmission &&
+ } else if (g_rlcmac_ctx->cfg.ul_tbf_preemptive_retransmission &&
!gprs_rlcmac_rlc_ul_window_window_empty(ul_tbf->ulw)) {
/* The window contains unacked packages, but not acked.
* Mark unacked bsns as RESEND */
diff --git a/src/rlcmac/tbf_ul_ass_fsm.c b/src/rlcmac/tbf_ul_ass_fsm.c
index 8b61cbe..f9ccfcb 100644
--- a/src/rlcmac/tbf_ul_ass_fsm.c
+++ b/src/rlcmac/tbf_ul_ass_fsm.c
@@ -66,7 +66,7 @@
#define tbf_ul_ass_fsm_state_chg(fi, NEXT_STATE) \
osmo_tdef_fsm_inst_state_chg(fi, NEXT_STATE, \
tbf_ul_ass_fsm_timeouts, \
- g_ctx->T_defs, \
+ g_rlcmac_ctx->T_defs, \
-1)
static struct msgb *create_pkt_resource_req(const struct gprs_rlcmac_tbf_ul_ass_fsm_ctx
*ctx,
@@ -363,7 +363,7 @@
/* If RRBP contains valid data, schedule a response (PKT CONTROL ACK or PKT RESOURCE
REQ). */
if (d->dl_block->SP) {
uint32_t poll_fn = rrbp2fn(d->fn, d->dl_block->RRBP);
- gprs_rlcmac_pdch_ulc_reserve(g_ctx->sched.ulc[d->ts_nr], poll_fn,
+ gprs_rlcmac_pdch_ulc_reserve(g_rlcmac_ctx->sched.ulc[d->ts_nr], poll_fn,
GPRS_RLCMAC_PDCH_ULC_POLL_UL_ASS,
ul_tbf_as_tbf(ctx->ul_tbf));
}
@@ -396,7 +396,7 @@
/* If RRBP contains valid data, schedule a response (PKT CONTROL ACK or PKT RESOURCE
REQ). */
if (d->dl_block->SP) {
uint32_t poll_fn = rrbp2fn(d->fn, d->dl_block->RRBP);
- gprs_rlcmac_pdch_ulc_reserve(g_ctx->sched.ulc[d->ts_nr], poll_fn,
+ gprs_rlcmac_pdch_ulc_reserve(g_rlcmac_ctx->sched.ulc[d->ts_nr], poll_fn,
GPRS_RLCMAC_PDCH_ULC_POLL_UL_ASS,
ul_tbf_as_tbf(ctx->ul_tbf));
}
diff --git a/src/rlcmac/tbf_ul_fsm.c b/src/rlcmac/tbf_ul_fsm.c
index 9bf708c..96adf8b 100644
--- a/src/rlcmac/tbf_ul_fsm.c
+++ b/src/rlcmac/tbf_ul_fsm.c
@@ -53,7 +53,7 @@
#define tbf_ul_fsm_state_chg(fi, NEXT_STATE) \
osmo_tdef_fsm_inst_state_chg(fi, NEXT_STATE, \
tbf_ul_fsm_timeouts, \
- g_ctx->T_defs, \
+ g_rlcmac_ctx->T_defs, \
-1)
static uint8_t ul_tbf_ul_slotmask(struct gprs_rlcmac_ul_tbf *ul_tbf)
@@ -110,7 +110,7 @@
(osmo_timer_pending(&fi->timer) && fi->T == 3182));
LOGPFSML(ctx->fi, LOGL_INFO, "Last UL block sent (CV=0), start T3182\n");
fi->T = 3182;
- val_sec = osmo_tdef_get(g_ctx->T_defs, fi->T, OSMO_TDEF_S, -1);
+ val_sec = osmo_tdef_get(g_rlcmac_ctx->T_defs, fi->T, OSMO_TDEF_S, -1);
osmo_timer_schedule(&fi->timer, val_sec, 0);
}
}
@@ -169,7 +169,7 @@
if (ctx->ul_tbf->ul_ass_fsm.ass_type == GPRS_RLCMAC_TBF_UL_ASS_TYPE_1PHASE) {
LOGPFSML(ctx->fi, LOGL_INFO, "First UL block sent (1 phase access), start
T3166\n");
fi->T = 3166;
- val_sec = osmo_tdef_get(g_ctx->T_defs, fi->T, OSMO_TDEF_S, -1);
+ val_sec = osmo_tdef_get(g_rlcmac_ctx->T_defs, fi->T, OSMO_TDEF_S, -1);
osmo_timer_schedule(&fi->timer, val_sec, 0);
}
break;
diff --git a/src/sm/sm.c b/src/sm/sm.c
index 59a5e7b..c83e739 100644
--- a/src/sm/sm.c
+++ b/src/sm/sm.c
@@ -33,7 +33,7 @@
#include <osmocom/gprs/sm/sm_ms_fsm.h>
#include <osmocom/gprs/sm/sm_pdu.h>
-struct gprs_sm_ctx *g_ctx;
+struct gprs_sm_ctx *g_sm_ctx;
/* TS 24.008 */
static struct osmo_tdef T_defs_sm[] = {
@@ -45,10 +45,10 @@
{
struct gprs_sm_ms *ms;
- while ((ms = llist_first_entry_or_null(&g_ctx->ms_list, struct gprs_sm_ms,
list)))
+ while ((ms = llist_first_entry_or_null(&g_sm_ctx->ms_list, struct gprs_sm_ms,
list)))
gprs_sm_ms_free(ms);
- talloc_free(g_ctx);
+ talloc_free(g_sm_ctx);
}
int osmo_gprs_sm_init(enum osmo_gprs_sm_location location)
@@ -57,22 +57,22 @@
int rc;
OSMO_ASSERT(location == OSMO_GPRS_SM_LOCATION_MS || location ==
OSMO_GPRS_SM_LOCATION_NETWORK)
- if (g_ctx) {
+ if (g_sm_ctx) {
first_init = false;
gprs_sm_ctx_free();
}
- g_ctx = talloc_zero(NULL, struct gprs_sm_ctx);
- g_ctx->location = location;
- g_ctx->T_defs = T_defs_sm;
- INIT_LLIST_HEAD(&g_ctx->ms_list);
+ g_sm_ctx = talloc_zero(NULL, struct gprs_sm_ctx);
+ g_sm_ctx->location = location;
+ g_sm_ctx->T_defs = T_defs_sm;
+ INIT_LLIST_HEAD(&g_sm_ctx->ms_list);
- osmo_tdefs_reset(g_ctx->T_defs);
+ osmo_tdefs_reset(g_sm_ctx->T_defs);
if (first_init) {
rc = gprs_sm_ms_fsm_init();
if (rc != 0) {
- TALLOC_FREE(g_ctx);
+ TALLOC_FREE(g_sm_ctx);
return rc;
}
}
@@ -83,13 +83,13 @@
{
struct gprs_sm_ms *ms;
- ms = talloc_zero(g_ctx, struct gprs_sm_ms);
+ ms = talloc_zero(g_sm_ctx, struct gprs_sm_ms);
if (!ms)
return NULL;
ms->ms_id = ms_id;
- llist_add(&ms->list, &g_ctx->ms_list);
+ llist_add(&ms->list, &g_sm_ctx->ms_list);
return ms;
}
@@ -113,7 +113,7 @@
{
struct gprs_sm_ms *ms;
- llist_for_each_entry(ms, &g_ctx->ms_list, list) {
+ llist_for_each_entry(ms, &g_sm_ctx->ms_list, list) {
if (ms->ms_id == ms_id)
return ms;
}
@@ -123,12 +123,12 @@
struct gprs_sm_entity *gprs_sm_entity_alloc(struct gprs_sm_ms *ms, uint32_t nsapi)
{
struct gprs_sm_entity *sme;
- sme = talloc_zero(g_ctx, struct gprs_sm_entity);
+ sme = talloc_zero(g_sm_ctx, struct gprs_sm_entity);
if (!sme)
return NULL;
sme->ms = ms;
- sme->sess_id = g_ctx->next_sess_id++;
+ sme->sess_id = g_sm_ctx->next_sess_id++;
sme->nsapi = nsapi;
if (gprs_sm_ms_fsm_ctx_init(&sme->ms_fsm, sme) < 0) {
@@ -157,7 +157,7 @@
struct gprs_sm_ms *ms;
unsigned int i;
- llist_for_each_entry(ms, &g_ctx->ms_list, list) {
+ llist_for_each_entry(ms, &g_sm_ctx->ms_list, list) {
for (i = 0; i < ARRAY_SIZE(ms->pdp); i++) {
if (!ms->pdp[i])
continue;
diff --git a/src/sm/sm_ms_fsm.c b/src/sm/sm_ms_fsm.c
index b6fb79f..92137c4 100644
--- a/src/sm/sm_ms_fsm.c
+++ b/src/sm/sm_ms_fsm.c
@@ -39,7 +39,7 @@
};
#define sm_ms_fsm_state_chg(fi, NEXT_STATE) \
- osmo_tdef_fsm_inst_state_chg(fi, NEXT_STATE, sm_ms_fsm_timeouts, g_ctx->T_defs, -1)
+ osmo_tdef_fsm_inst_state_chg(fi, NEXT_STATE, sm_ms_fsm_timeouts, g_sm_ctx->T_defs,
-1)
static void st_sm_ms_pdp_inactive(struct osmo_fsm_inst *fi, uint32_t event, void *data)
{
diff --git a/src/sm/sm_prim.c b/src/sm/sm_prim.c
index 197c8a4..33d15ba 100644
--- a/src/sm/sm_prim.c
+++ b/src/sm/sm_prim.c
@@ -87,22 +87,22 @@
/* Set callback used by SM layer to push primitives to higher layers in protocol stack
*/
void osmo_gprs_sm_prim_set_up_cb(osmo_gprs_sm_prim_up_cb up_cb, void *up_user_data)
{
- g_ctx->sm_up_cb = up_cb;
- g_ctx->sm_up_cb_user_data = up_user_data;
+ g_sm_ctx->sm_up_cb = up_cb;
+ g_sm_ctx->sm_up_cb_user_data = up_user_data;
}
/* Set callback used by SM layer to push primitives to lower layers in protocol stack */
void osmo_gprs_sm_prim_set_down_cb(osmo_gprs_sm_prim_down_cb down_cb, void
*down_user_data)
{
- g_ctx->sm_down_cb = down_cb;
- g_ctx->sm_down_cb_user_data = down_user_data;
+ g_sm_ctx->sm_down_cb = down_cb;
+ g_sm_ctx->sm_down_cb_user_data = down_user_data;
}
/* Set callback used by SM layer to push primitives to GMM lower layer in protocol stack
*/
void osmo_gprs_sm_prim_set_gmm_down_cb(osmo_gprs_sm_prim_gmm_down_cb gmm_down_cb, void
*gmm_down_user_data)
{
- g_ctx->sm_gmm_down_cb = gmm_down_cb;
- g_ctx->sm_gmm_down_cb_user_data = gmm_down_user_data;
+ g_sm_ctx->sm_gmm_down_cb = gmm_down_cb;
+ g_sm_ctx->sm_gmm_down_cb_user_data = gmm_down_user_data;
}
/********************************
@@ -193,10 +193,10 @@
int gprs_sm_prim_call_up_cb(struct osmo_gprs_sm_prim *sm_prim)
{
int rc;
- if (g_ctx->sm_up_cb)
- rc = g_ctx->sm_up_cb(sm_prim, g_ctx->sm_up_cb_user_data);
+ if (g_sm_ctx->sm_up_cb)
+ rc = g_sm_ctx->sm_up_cb(sm_prim, g_sm_ctx->sm_up_cb_user_data);
else
- rc = sm_up_cb_dummy(sm_prim, g_ctx->sm_up_cb_user_data);
+ rc = sm_up_cb_dummy(sm_prim, g_sm_ctx->sm_up_cb_user_data);
msgb_free(sm_prim->oph.msg);
return rc;
}
@@ -304,10 +304,10 @@
int gprs_sm_prim_call_down_cb(struct osmo_gprs_sm_prim *sm_prim)
{
int rc;
- if (g_ctx->sm_down_cb)
- rc = g_ctx->sm_down_cb(sm_prim, g_ctx->sm_down_cb_user_data);
+ if (g_sm_ctx->sm_down_cb)
+ rc = g_sm_ctx->sm_down_cb(sm_prim, g_sm_ctx->sm_down_cb_user_data);
else
- rc = sm_down_cb_dummy(sm_prim, g_ctx->sm_down_cb_user_data);
+ rc = sm_down_cb_dummy(sm_prim, g_sm_ctx->sm_down_cb_user_data);
msgb_free(sm_prim->oph.msg);
return rc;
}
@@ -315,7 +315,7 @@
/* SM lower layers (GMM) push SM primitive up to SM layer: */
int osmo_gprs_sm_prim_lower_up(struct osmo_gprs_sm_prim *sm_prim)
{
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_sm_ctx);
OSMO_ASSERT(sm_prim);
struct msgb *msg = sm_prim->oph.msg;
int rc;
@@ -339,10 +339,10 @@
int gprs_sm_prim_call_gmm_down_cb(struct osmo_gprs_gmm_prim *gmm_prim)
{
int rc;
- if (g_ctx->sm_gmm_down_cb)
- rc = g_ctx->sm_gmm_down_cb(gmm_prim, g_ctx->sm_gmm_down_cb_user_data);
+ if (g_sm_ctx->sm_gmm_down_cb)
+ rc = g_sm_ctx->sm_gmm_down_cb(gmm_prim, g_sm_ctx->sm_gmm_down_cb_user_data);
else
- rc = sm_gmm_down_cb_dummy(gmm_prim, g_ctx->sm_gmm_down_cb_user_data);
+ rc = sm_gmm_down_cb_dummy(gmm_prim, g_sm_ctx->sm_gmm_down_cb_user_data);
/* Special return value '1' means: do not free */
if (rc != 1)
msgb_free(gmm_prim->oph.msg);
@@ -412,7 +412,7 @@
/* SM lower layers (GMM) push SM primitive up to SM layer: */
int osmo_gprs_sm_prim_gmm_lower_up(struct osmo_gprs_gmm_prim *gmm_prim)
{
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_sm_ctx);
OSMO_ASSERT(gmm_prim);
struct msgb *msg = gmm_prim->oph.msg;
int rc;
diff --git a/src/sndcp/sndcp.c b/src/sndcp/sndcp.c
index 252ba06..1ff5893 100644
--- a/src/sndcp/sndcp.c
+++ b/src/sndcp/sndcp.c
@@ -32,15 +32,15 @@
#include <osmocom/gprs/sndcp/sndcp_private.h>
#include <osmocom/gprs/llc/llc_prim.h>
-struct gprs_sndcp_ctx *g_ctx;
+struct gprs_sndcp_ctx *g_sndcp_ctx;
int osmo_gprs_sndcp_init(void)
{
- if (g_ctx)
- talloc_free(g_ctx);
+ if (g_sndcp_ctx)
+ talloc_free(g_sndcp_ctx);
- g_ctx = talloc_zero(NULL, struct gprs_sndcp_ctx);
- INIT_LLIST_HEAD(&g_ctx->snme_list);
+ g_sndcp_ctx = talloc_zero(NULL, struct gprs_sndcp_ctx);
+ INIT_LLIST_HEAD(&g_sndcp_ctx->snme_list);
return 0;
}
@@ -48,12 +48,12 @@
{
struct gprs_sndcp_mgmt_entity *snme;
- snme = talloc_zero(g_ctx, struct gprs_sndcp_mgmt_entity);
+ snme = talloc_zero(g_sndcp_ctx, struct gprs_sndcp_mgmt_entity);
if (!snme)
return NULL;
snme->tlli = tlli;
- llist_add(&snme->list, &g_ctx->snme_list);
+ llist_add(&snme->list, &g_sndcp_ctx->snme_list);
return snme;
}
@@ -73,7 +73,7 @@
{
struct gprs_sndcp_mgmt_entity *snme;
- llist_for_each_entry(snme, &g_ctx->snme_list, list) {
+ llist_for_each_entry(snme, &g_sndcp_ctx->snme_list, list) {
if (snme->tlli == tlli)
return snme;
}
@@ -111,7 +111,7 @@
{
struct gprs_sndcp_entity *sne;
- sne = talloc_zero(g_ctx, struct gprs_sndcp_entity);
+ sne = talloc_zero(g_sndcp_ctx, struct gprs_sndcp_entity);
if (!sne)
return NULL;
@@ -172,7 +172,7 @@
{
struct defrag_queue_entry *dqe;
- dqe = talloc_zero(g_ctx, struct defrag_queue_entry);
+ dqe = talloc_zero(g_sndcp_ctx, struct defrag_queue_entry);
if (!dqe)
return -ENOMEM;
dqe->data = talloc_zero_size(dqe, data_len);
@@ -323,7 +323,7 @@
* hands it off to the correct GTP tunnel + GGSN via gtp_data_req() */
/* Decompress packet */
- if (any_pcomp_or_dcomp_active(g_ctx)) {
+ if (any_pcomp_or_dcomp_active(g_sndcp_ctx)) {
expnd = decompress_segment(sne, msg, npdu, npdu_len, &npdu_len);
if (!expnd) {
rc = -EIO;
@@ -542,7 +542,7 @@
LOGSNE(sne, "===================================================\n");
debug_ip_packet(npdu, npdu_len, 0, __func__ "()");
#endif
- if (any_pcomp_or_dcomp_active(g_ctx)) {
+ if (any_pcomp_or_dcomp_active(g_sndcp_ctx)) {
/* Apply header compression */
rc = gprs_sndcp_pcomp_compress(msg->data, msg->len, &pcomp,
@@ -810,8 +810,8 @@
* hands it off to the correct GTP tunnel + GGSN via gtp_data_req() */
/* Decompress packet */
- if (any_pcomp_or_dcomp_active(g_ctx)) {
- expnd = decompress_segment(sne, g_ctx, npdu, npdu_len, (unsigned int *)&npdu_len);
+ if (any_pcomp_or_dcomp_active(g_sndcp_ctx)) {
+ expnd = decompress_segment(sne, g_sndcp_ctx, npdu, npdu_len, (unsigned int
*)&npdu_len);
if (!expnd) {
rc = -EIO;
goto ret_free;
@@ -825,7 +825,7 @@
rc = gprs_sndcp_prim_call_up_cb(sndcp_prim_tx);
ret_free:
- if (any_pcomp_or_dcomp_active(g_ctx))
+ if (any_pcomp_or_dcomp_active(g_sndcp_ctx))
talloc_free(expnd);
return rc;
}
@@ -846,7 +846,7 @@
/* Process proposed parameters */
switch (comp_field->algo.pcomp) {
case RFC_1144:
- if (g_ctx->cfg.pcomp_rfc1144_passive_accept
+ if (g_sndcp_ctx->cfg.pcomp_rfc1144_passive_accept
&& comp_field->rfc1144_params->nsapi_len > 0) {
LOGSNME(snme, LOGL_DEBUG, "Accepting RFC1144 header compression...\n");
gprs_sndcp_comp_add(snme, snme->comp.proto, comp_field);
@@ -888,7 +888,7 @@
/* Process proposed parameters */
switch (comp_field->algo.dcomp) {
case V42BIS:
- if (g_ctx->cfg.dcomp_v42bis_passive_accept &&
+ if (g_sndcp_ctx->cfg.dcomp_v42bis_passive_accept &&
comp_field->v42bis_params->nsapi_len > 0) {
LOGSNME(snme, LOGL_DEBUG, "Accepting V.42bis data compression...\n");
gprs_sndcp_comp_add(snme, snme->comp.data, comp_field);
diff --git a/src/sndcp/sndcp_prim.c b/src/sndcp/sndcp_prim.c
index dee7dbe..bc22c9c 100644
--- a/src/sndcp/sndcp_prim.c
+++ b/src/sndcp/sndcp_prim.c
@@ -99,22 +99,22 @@
/* Set callback used by SNDCP layer to push primitives to higher layers in protocol stack
*/
void osmo_gprs_sndcp_prim_set_up_cb(osmo_gprs_sndcp_prim_up_cb up_cb, void
*up_user_data)
{
- g_ctx->sndcp_up_cb = up_cb;
- g_ctx->sndcp_up_cb_user_data = up_user_data;
+ g_sndcp_ctx->sndcp_up_cb = up_cb;
+ g_sndcp_ctx->sndcp_up_cb_user_data = up_user_data;
}
/* Set callback used by SNDCP layer to push primitives to lower layers in protocol stack
*/
void osmo_gprs_sndcp_prim_set_down_cb(osmo_gprs_sndcp_prim_down_cb down_cb, void
*down_user_data)
{
- g_ctx->sndcp_down_cb = down_cb;
- g_ctx->sndcp_down_cb_user_data = down_user_data;
+ g_sndcp_ctx->sndcp_down_cb = down_cb;
+ g_sndcp_ctx->sndcp_down_cb_user_data = down_user_data;
}
/* Set callback used by SNDCP layer to push primitives to SM sublayer */
void osmo_gprs_sndcp_prim_set_snsm_cb(osmo_gprs_sndcp_prim_snsm_cb snsm_cb, void
*snsm_user_data)
{
- g_ctx->sndcp_snsm_cb = snsm_cb;
- g_ctx->sndcp_snsm_cb_user_data = snsm_user_data;
+ g_sndcp_ctx->sndcp_snsm_cb = snsm_cb;
+ g_sndcp_ctx->sndcp_snsm_cb_user_data = snsm_user_data;
}
/********************************
@@ -289,10 +289,10 @@
int gprs_sndcp_prim_call_up_cb(struct osmo_gprs_sndcp_prim *sndcp_prim)
{
int rc;
- if (g_ctx->sndcp_up_cb)
- rc = g_ctx->sndcp_up_cb(sndcp_prim, g_ctx->sndcp_up_cb_user_data);
+ if (g_sndcp_ctx->sndcp_up_cb)
+ rc = g_sndcp_ctx->sndcp_up_cb(sndcp_prim, g_sndcp_ctx->sndcp_up_cb_user_data);
else
- rc = sndcp_up_cb_dummy(sndcp_prim, g_ctx->sndcp_up_cb_user_data);
+ rc = sndcp_up_cb_dummy(sndcp_prim, g_sndcp_ctx->sndcp_up_cb_user_data);
msgb_free(sndcp_prim->oph.msg);
return rc;
}
@@ -395,7 +395,7 @@
int osmo_gprs_sndcp_prim_upper_down(struct osmo_gprs_sndcp_prim *sndcp_prim)
{
int rc;
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_sndcp_ctx);
LOGSNDCP(LOGL_INFO, "Rx from upper layers: %s\n",
osmo_gprs_sndcp_prim_name(sndcp_prim));
@@ -428,10 +428,10 @@
int gprs_sndcp_prim_call_down_cb(struct osmo_gprs_llc_prim *llc_prim)
{
int rc;
- if (g_ctx->sndcp_down_cb)
- rc = g_ctx->sndcp_down_cb(llc_prim, g_ctx->sndcp_down_cb_user_data);
+ if (g_sndcp_ctx->sndcp_down_cb)
+ rc = g_sndcp_ctx->sndcp_down_cb(llc_prim, g_sndcp_ctx->sndcp_down_cb_user_data);
else
- rc = sndcp_down_cb_dummy(llc_prim, g_ctx->sndcp_down_cb_user_data);
+ rc = sndcp_down_cb_dummy(llc_prim, g_sndcp_ctx->sndcp_down_cb_user_data);
msgb_free(llc_prim->oph.msg);
return rc;
}
@@ -515,7 +515,7 @@
/* SNDCP lower layers (LLC) push SNDCP primitive up to SNDCP layer: */
int osmo_gprs_sndcp_prim_lower_up(struct osmo_gprs_llc_prim *llc_prim)
{
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_sndcp_ctx);
OSMO_ASSERT(llc_prim);
struct msgb *msg = llc_prim->oph.msg;
int rc;
@@ -545,10 +545,10 @@
int gprs_sndcp_prim_call_snsm_cb(struct osmo_gprs_sndcp_prim *sndcp_prim)
{
int rc;
- if (g_ctx->sndcp_snsm_cb)
- rc = g_ctx->sndcp_snsm_cb(sndcp_prim, g_ctx->sndcp_snsm_cb_user_data);
+ if (g_sndcp_ctx->sndcp_snsm_cb)
+ rc = g_sndcp_ctx->sndcp_snsm_cb(sndcp_prim,
g_sndcp_ctx->sndcp_snsm_cb_user_data);
else
- rc = sndcp_snsm_cb_dummy(sndcp_prim, g_ctx->sndcp_snsm_cb_user_data);
+ rc = sndcp_snsm_cb_dummy(sndcp_prim, g_sndcp_ctx->sndcp_snsm_cb_user_data);
msgb_free(sndcp_prim->oph.msg);
return rc;
}
@@ -646,7 +646,7 @@
int osmo_gprs_sndcp_prim_dispatch_snsm(struct osmo_gprs_sndcp_prim *sndcp_prim)
{
int rc;
- OSMO_ASSERT(g_ctx);
+ OSMO_ASSERT(g_sndcp_ctx);
OSMO_ASSERT(sndcp_prim);
struct msgb *msg = sndcp_prim->oph.msg;
--
To view, visit
https://gerrit.osmocom.org/c/libosmo-gprs/+/32293
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-gprs
Gerrit-Branch: master
Gerrit-Change-Id: Ib8a844551452b79bdb3a81968ffc1fd42ee1c5d9
Gerrit-Change-Number: 32293
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newchange