sgsn: Pass RAB ID to iu_rab_act_ps() function

This commit is contained in:
Daniel Willmann
2016-04-08 12:11:35 +02:00
parent bb81326719
commit 42024336fe
4 changed files with 5 additions and 6 deletions

View File

@@ -35,7 +35,7 @@ int iu_init(void *ctx, const char *listen_addr, uint16_t listen_port,
int iu_tx(struct msgb *msg, uint8_t sapi);
int iu_rab_act_cs(struct ue_conn_ctx *ue_ctx, uint32_t rtp_ip, uint16_t rtp_port);
int iu_rab_act_ps(struct sgsn_pdp_ctx *pdp);
int iu_rab_act_ps(uint8_t rab_id, struct sgsn_pdp_ctx *pdp);
int iu_rab_deact(struct ue_conn_ctx *ue_ctx, uint8_t rab_id);
int iu_tx_sec_mode_cmd(struct ue_conn_ctx *uectx, struct gsm_auth_tuple *tp,
int send_ck);

View File

@@ -787,7 +787,7 @@ static int gsm48_gmm_authorize(struct sgsn_mm_ctx *ctx)
if (ctx->iu.service.type == 1) {
struct sgsn_pdp_ctx *pdp;
llist_for_each_entry(pdp, &ctx->pdp_list, list) {
iu_rab_act_ps(pdp);
iu_rab_act_ps(1, pdp);
}
}

View File

@@ -370,7 +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 */
iu_rab_act_ps(pctx);
iu_rab_act_ps(1, pctx);
return 0;
}

View File

@@ -91,7 +91,7 @@ int iu_rab_act_cs(struct ue_conn_ctx *ue_ctx, uint32_t rtp_ip, uint16_t rtp_port
return iu_rab_act(ue_ctx, msg);
}
int iu_rab_act_ps(struct sgsn_pdp_ctx *pdp)
int iu_rab_act_ps(uint8_t rab_id, struct sgsn_pdp_ctx *pdp)
{
struct msgb *msg;
struct sgsn_mm_ctx *mm = pdp->mm;
@@ -104,8 +104,7 @@ int iu_rab_act_ps(struct sgsn_pdp_ctx *pdp)
memcpy(&ggsn_ip, pdp->lib->gsnru.v, pdp->lib->gsnru.l);
ggsn_ip = htonl(ggsn_ip);
/* FIXME: Generate unique RAB ID per UE */
msg = ranap_new_msg_rab_assign_data(1, ggsn_ip, pdp->lib->teid_own);
msg = ranap_new_msg_rab_assign_data(rab_id, ggsn_ip, pdp->lib->teid_own);
msg->l2h = msg->data;
return iu_rab_act(uectx, msg);
}