NGAP: fix NGAP PDU Session Modify transfer encoding
Encode response/unsuccessful transfers using existing stack-allocated transfer structs.
This commit is contained in:
@@ -1115,12 +1115,11 @@ int ngap_gNB_pdusession_modify_resp(instance_t instance, ngap_pdusession_modify_
|
|||||||
qos->qosFlowIdentifier = pdusession_modify_resp_p->pdusessions[i].qos[qos_flow_index].qfi;
|
qos->qosFlowIdentifier = pdusession_modify_resp_p->pdusessions[i].qos[qos_flow_index].qfi;
|
||||||
}
|
}
|
||||||
asn_encode_to_new_buffer_result_t res = {0};
|
asn_encode_to_new_buffer_result_t res = {0};
|
||||||
NGAP_PDUSessionResourceModifyResponseTransfer_t *transfer_p = NULL;
|
res = asn_encode_to_new_buffer(NULL, ATS_ALIGNED_CANONICAL_PER, &asn_DEF_NGAP_PDUSessionResourceModifyResponseTransfer, &transfer);
|
||||||
res = asn_encode_to_new_buffer(NULL, ATS_ALIGNED_CANONICAL_PER, &asn_DEF_NGAP_PDUSessionResourceModifyResponseTransfer, transfer_p);
|
|
||||||
item->pDUSessionResourceModifyResponseTransfer.buf = res.buffer;
|
item->pDUSessionResourceModifyResponseTransfer.buf = res.buffer;
|
||||||
item->pDUSessionResourceModifyResponseTransfer.size = res.result.encoded;
|
item->pDUSessionResourceModifyResponseTransfer.size = res.result.encoded;
|
||||||
|
|
||||||
ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_NGAP_PDUSessionResourceModifyResponseTransfer, transfer_p);
|
ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_NGAP_PDUSessionResourceModifyResponseTransfer, &transfer);
|
||||||
|
|
||||||
NGAP_DEBUG("pdusession_modify_resp: modified pdusession ID %ld\n", item->pDUSessionID);
|
NGAP_DEBUG("pdusession_modify_resp: modified pdusession ID %ld\n", item->pDUSessionID);
|
||||||
}
|
}
|
||||||
@@ -1143,12 +1142,11 @@ int ngap_gNB_pdusession_modify_resp(instance_t instance, ngap_pdusession_modify_
|
|||||||
encode_ngap_cause(&pdusessionTransfer.cause, &pdusession_modify_resp_p->pdusessions_failed[i].cause);
|
encode_ngap_cause(&pdusessionTransfer.cause, &pdusession_modify_resp_p->pdusessions_failed[i].cause);
|
||||||
|
|
||||||
asn_encode_to_new_buffer_result_t res = {0};
|
asn_encode_to_new_buffer_result_t res = {0};
|
||||||
NGAP_PDUSessionResourceModifyUnsuccessfulTransfer_t *pdusessionTransfer_p = NULL;
|
|
||||||
res = asn_encode_to_new_buffer(NULL, ATS_ALIGNED_CANONICAL_PER, &asn_DEF_NGAP_PDUSessionResourceModifyUnsuccessfulTransfer, &pdusessionTransfer);
|
res = asn_encode_to_new_buffer(NULL, ATS_ALIGNED_CANONICAL_PER, &asn_DEF_NGAP_PDUSessionResourceModifyUnsuccessfulTransfer, &pdusessionTransfer);
|
||||||
item->pDUSessionResourceModifyUnsuccessfulTransfer.buf = res.buffer;
|
item->pDUSessionResourceModifyUnsuccessfulTransfer.buf = res.buffer;
|
||||||
item->pDUSessionResourceModifyUnsuccessfulTransfer.size = res.result.encoded;
|
item->pDUSessionResourceModifyUnsuccessfulTransfer.size = res.result.encoded;
|
||||||
|
|
||||||
ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_NGAP_PDUSessionResourceModifyUnsuccessfulTransfer, pdusessionTransfer_p);
|
ASN_STRUCT_FREE_CONTENTS_ONLY(asn_DEF_NGAP_PDUSessionResourceModifyUnsuccessfulTransfer, &pdusessionTransfer);
|
||||||
|
|
||||||
NGAP_INFO("pdusession_modify_resp: failed pdusession ID %ld\n", item->pDUSessionID);
|
NGAP_INFO("pdusession_modify_resp: failed pdusession ID %ld\n", item->pDUSessionID);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user