summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--openbsc/include/openbsc/gprs_sgsn.h2
-rw-r--r--openbsc/src/gprs/gprs_gmm.c4
-rw-r--r--openbsc/src/gprs/gprs_sgsn.c6
-rw-r--r--openbsc/src/gprs/sgsn_libgtp.c6
4 files changed, 2 insertions, 16 deletions
diff --git a/openbsc/include/openbsc/gprs_sgsn.h b/openbsc/include/openbsc/gprs_sgsn.h
index 2bab4c2c2..495836be7 100644
--- a/openbsc/include/openbsc/gprs_sgsn.h
+++ b/openbsc/include/openbsc/gprs_sgsn.h
@@ -150,7 +150,6 @@ struct sgsn_mm_ctx {
/* Voice Support Match Indicator */
struct ue_conn_ctx *ue_ctx;
struct service_info service;
- uint8_t rab_id;
} iu;
/* VLR number */
uint32_t new_sgsn_addr;
@@ -227,7 +226,6 @@ struct sgsn_mm_ctx *sgsn_mm_ctx_by_tlli(uint32_t tlli,
struct sgsn_mm_ctx *sgsn_mm_ctx_by_ptmsi(uint32_t tmsi);
struct sgsn_mm_ctx *sgsn_mm_ctx_by_imsi(const char *imsi);
struct sgsn_mm_ctx *sgsn_mm_ctx_by_ue_ctx(const void *uectx);
-uint8_t rab_id_from_mm_ctx(struct sgsn_mm_ctx *mm);
/* look-up by matching TLLI and P-TMSI (think twice before using this) */
struct sgsn_mm_ctx *sgsn_mm_ctx_by_tlli_and_ptmsi(uint32_t tlli,
diff --git a/openbsc/src/gprs/gprs_gmm.c b/openbsc/src/gprs/gprs_gmm.c
index 208faa93a..d734df014 100644
--- a/openbsc/src/gprs/gprs_gmm.c
+++ b/openbsc/src/gprs/gprs_gmm.c
@@ -709,10 +709,8 @@ void activate_pdp_rabs(struct sgsn_mm_ctx *ctx)
{
/* Send RAB activation requests for all PDP contexts */
struct sgsn_pdp_ctx *pdp;
- uint8_t rab_id;
llist_for_each_entry(pdp, &ctx->pdp_list, list) {
- rab_id = rab_id_from_mm_ctx(ctx);
- iu_rab_act_ps(rab_id, pdp, 1);
+ iu_rab_act_ps(pdp->nsapi, pdp, 1);
}
}
diff --git a/openbsc/src/gprs/gprs_sgsn.c b/openbsc/src/gprs/gprs_sgsn.c
index 76ddd9199..70b0358e6 100644
--- a/openbsc/src/gprs/gprs_sgsn.c
+++ b/openbsc/src/gprs/gprs_sgsn.c
@@ -105,11 +105,6 @@ struct sgsn_mm_ctx *sgsn_mm_ctx_by_ue_ctx(const void *uectx)
return NULL;
}
-uint8_t rab_id_from_mm_ctx(struct sgsn_mm_ctx *mm)
-{
- return mm->iu.rab_id++;
-}
-
/* look-up a SGSN MM context based on TLLI + RAI */
struct sgsn_mm_ctx *sgsn_mm_ctx_by_tlli(uint32_t tlli,
const struct gprs_ra_id *raid)
@@ -208,7 +203,6 @@ struct sgsn_mm_ctx *sgsn_mm_ctx_alloc_iu(void *uectx)
ctx->ran_type = MM_CTX_T_UTRAN_Iu;
ctx->iu.ue_ctx = uectx;
- ctx->iu.rab_id = 1;
ctx->iu.new_key = 1;
ctx->mm_state = GMM_DEREGISTERED;
ctx->auth_triplet.key_seq = GSM_KEY_SEQ_INVAL;
diff --git a/openbsc/src/gprs/sgsn_libgtp.c b/openbsc/src/gprs/sgsn_libgtp.c
index 9277a5dcc..214859948 100644
--- a/openbsc/src/gprs/sgsn_libgtp.c
+++ b/openbsc/src/gprs/sgsn_libgtp.c
@@ -370,10 +370,7 @@ static int create_pdp_conf(struct pdp_t *pdp, void *cbp, int cause)
return send_act_pdp_cont_acc(pctx);
} else {
/* Activate a radio bearer */
- uint8_t rab_id;
-
- rab_id = rab_id_from_mm_ctx(pctx);
- iu_rab_act_ps(rab_id, pctx, 1);
+ iu_rab_act_ps(pdp->nsapi, pctx, 1);
return 0;
}
@@ -454,7 +451,6 @@ static int delete_pdp_conf(struct pdp_t *pdp, void *cbp, int cause)
sndcp_sm_deactivate_ind(&pctx->mm->gb.llme->lle[pctx->sapi], pctx->nsapi);
} else {
/* Dectivate a radio bearer */
- /* TODO: Save and use rab_id */
iu_rab_deact(pctx->mm->iu.ue_ctx, 1);
}