[GTPv2-C] Fix the Create Bearer Request (#1201)

Use instance 2 instead of instance 1
This commit is contained in:
Sukchan Lee 2021-10-26 15:26:10 +09:00
parent 42c9dce2b7
commit 5d234cb108
4 changed files with 8 additions and 8 deletions

View File

@ -402,7 +402,7 @@ void sgwc_s5c_handle_create_bearer_request(
ogs_error("No EPS Bearer ID"); ogs_error("No EPS Bearer ID");
cause_value = OGS_GTP_CAUSE_MANDATORY_IE_MISSING; cause_value = OGS_GTP_CAUSE_MANDATORY_IE_MISSING;
} }
if (req->bearer_contexts.s5_s8_u_sgw_f_teid.presence == 0) { if (req->bearer_contexts.s4_u_sgsn_f_teid.presence == 0) {
ogs_error("No GTP TEID"); ogs_error("No GTP TEID");
cause_value = OGS_GTP_CAUSE_MANDATORY_IE_MISSING; cause_value = OGS_GTP_CAUSE_MANDATORY_IE_MISSING;
} }
@ -427,7 +427,7 @@ void sgwc_s5c_handle_create_bearer_request(
ogs_assert(ul_tunnel); ogs_assert(ul_tunnel);
/* Receive Data Plane(UL) : PGW-S5U */ /* Receive Data Plane(UL) : PGW-S5U */
pgw_s5u_teid = req->bearer_contexts.s5_s8_u_sgw_f_teid.data; pgw_s5u_teid = req->bearer_contexts.s4_u_sgsn_f_teid.data;
ogs_assert(pgw_s5u_teid); ogs_assert(pgw_s5u_teid);
ul_tunnel->remote_teid = be32toh(pgw_s5u_teid->teid); ul_tunnel->remote_teid = be32toh(pgw_s5u_teid->teid);

View File

@ -622,7 +622,7 @@ void sgwc_sxa_handle_session_modification_response(
ogs_assert(gtp_req); ogs_assert(gtp_req);
/* Remove S5U-F-TEID */ /* Remove S5U-F-TEID */
gtp_req->bearer_contexts.s5_s8_u_sgw_f_teid.presence = 0; gtp_req->bearer_contexts.s4_u_sgsn_f_teid.presence = 0;
/* Send Data Plane(UL) : SGW-S1U */ /* Send Data Plane(UL) : SGW-S1U */
memset(&sgw_s1u_teid, 0, sizeof(ogs_gtp_f_teid_t)); memset(&sgw_s1u_teid, 0, sizeof(ogs_gtp_f_teid_t));

View File

@ -322,9 +322,9 @@ ogs_pkbuf_t *smf_s5c_build_create_bearer_request(
rv = ogs_gtp_sockaddr_to_f_teid( rv = ogs_gtp_sockaddr_to_f_teid(
bearer->pgw_s5u_addr, bearer->pgw_s5u_addr6, &pgw_s5u_teid, &len); bearer->pgw_s5u_addr, bearer->pgw_s5u_addr6, &pgw_s5u_teid, &len);
ogs_expect_or_return_val(rv == OGS_OK, NULL); ogs_expect_or_return_val(rv == OGS_OK, NULL);
req->bearer_contexts.s5_s8_u_sgw_f_teid.presence = 1; req->bearer_contexts.s4_u_sgsn_f_teid.presence = 1;
req->bearer_contexts.s5_s8_u_sgw_f_teid.data = &pgw_s5u_teid; req->bearer_contexts.s4_u_sgsn_f_teid.data = &pgw_s5u_teid;
req->bearer_contexts.s5_s8_u_sgw_f_teid.len = len; req->bearer_contexts.s4_u_sgsn_f_teid.len = len;
/* Bearer QoS */ /* Bearer QoS */
memset(&bearer_qos, 0, sizeof(bearer_qos)); memset(&bearer_qos, 0, sizeof(bearer_qos));

View File

@ -172,7 +172,7 @@ void test_s2b_handle_create_bearer_request(
ogs_error("No EPS Bearer ID"); ogs_error("No EPS Bearer ID");
return; return;
} }
if (req->bearer_contexts.s5_s8_u_sgw_f_teid.presence == 0) { if (req->bearer_contexts.s4_u_sgsn_f_teid.presence == 0) {
ogs_error("No GTP TEID"); ogs_error("No GTP TEID");
return; return;
} }
@ -195,7 +195,7 @@ void test_s2b_handle_create_bearer_request(
ogs_assert(bearer); ogs_assert(bearer);
/* Receive Data Plane(UL) : SMF-S2B-U */ /* Receive Data Plane(UL) : SMF-S2B-U */
smf_s2b_u_teid = req->bearer_contexts.s5_s8_u_sgw_f_teid.data; smf_s2b_u_teid = req->bearer_contexts.s4_u_sgsn_f_teid.data;
ogs_assert(smf_s2b_u_teid); ogs_assert(smf_s2b_u_teid);
bearer->sgw_s1u_teid = be32toh(smf_s2b_u_teid->teid); bearer->sgw_s1u_teid = be32toh(smf_s2b_u_teid->teid);
rv = ogs_gtp_f_teid_to_ip(smf_s2b_u_teid, &bearer->sgw_s1u_ip); rv = ogs_gtp_f_teid_to_ip(smf_s2b_u_teid, &bearer->sgw_s1u_ip);