forked from acouzens/open5gs
SMF: fix the bug for DataForwardingNotPossible
DataForwardingNotPossible should only be included if Data Path is not available during N2-Handover. However, there is a bug that always includes DataFowardingNotPossible regardless of Handover. So, I've fixed it!
This commit is contained in:
parent
d1400897e0
commit
31977bf30a
|
@ -305,7 +305,7 @@ typedef struct smf_sess_s {
|
||||||
/* Handover */
|
/* Handover */
|
||||||
struct {
|
struct {
|
||||||
bool prepared;
|
bool prepared;
|
||||||
bool direct_available;
|
bool data_forwarding_not_possible;
|
||||||
bool indirect_data_forwarding;
|
bool indirect_data_forwarding;
|
||||||
|
|
||||||
/* NG-U UP Transport Information Saved Temporally */
|
/* NG-U UP Transport Information Saved Temporally */
|
||||||
|
|
|
@ -87,7 +87,7 @@ ogs_pkbuf_t *ngap_build_pdu_session_resource_setup_request_transfer(
|
||||||
ogs_asn_ip_to_BIT_STRING(&upf_n3_ip, &gTPTunnel->transportLayerAddress);
|
ogs_asn_ip_to_BIT_STRING(&upf_n3_ip, &gTPTunnel->transportLayerAddress);
|
||||||
ogs_asn_uint32_to_OCTET_STRING(sess->upf_n3_teid, &gTPTunnel->gTP_TEID);
|
ogs_asn_uint32_to_OCTET_STRING(sess->upf_n3_teid, &gTPTunnel->gTP_TEID);
|
||||||
|
|
||||||
if (sess->handover.direct_available == false) {
|
if (sess->handover.data_forwarding_not_possible == true) {
|
||||||
ie = CALLOC(1,
|
ie = CALLOC(1,
|
||||||
sizeof(NGAP_PDUSessionResourceSetupRequestTransferIEs_t));
|
sizeof(NGAP_PDUSessionResourceSetupRequestTransferIEs_t));
|
||||||
ogs_assert(ie);
|
ogs_assert(ie);
|
||||||
|
|
|
@ -392,11 +392,8 @@ int ngap_handle_handover_required_transfer(
|
||||||
}
|
}
|
||||||
|
|
||||||
directForwardingPathAvailability = message.directForwardingPathAvailability;
|
directForwardingPathAvailability = message.directForwardingPathAvailability;
|
||||||
if (directForwardingPathAvailability) {
|
if (!directForwardingPathAvailability)
|
||||||
sess->handover.direct_available = true;
|
sess->handover.data_forwarding_not_possible = true;
|
||||||
} else {
|
|
||||||
sess->handover.direct_available = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
n2smbuf = ngap_build_pdu_session_resource_setup_request_transfer(sess);
|
n2smbuf = ngap_build_pdu_session_resource_setup_request_transfer(sess);
|
||||||
ogs_assert(n2smbuf);
|
ogs_assert(n2smbuf);
|
||||||
|
|
Loading…
Reference in New Issue