If the PDU Address IE is provided (checked through length), then the PDU Session Address is processed
This commit is contained in:
@@ -1050,7 +1050,7 @@ static void process_pdu_session_addr(pdu_session_establishment_accept_msg_t *msg
|
||||
{
|
||||
uint8_t *addr = msg->pdu_addr_ie.pdu_addr_oct;
|
||||
|
||||
switch (msg->pdu_type) {
|
||||
switch (msg->pdu_addr_ie.pdu_type) {
|
||||
case PDU_SESSION_TYPE_IPV4: {
|
||||
char ip[20];
|
||||
capture_ipv4_addr(&addr[0], ip, sizeof(ip));
|
||||
@@ -1130,7 +1130,12 @@ static void handle_pdu_session_accept(uint8_t *pdu_buffer, uint32_t msg_length)
|
||||
LOG_E(NAS, "decode_pdu_session_establishment_accept_msg failure\n");
|
||||
|
||||
// process PDU Session
|
||||
process_pdu_session_addr(&msg);
|
||||
|
||||
if (msg.pdu_addr_ie.pdu_length)
|
||||
process_pdu_session_addr(&msg);
|
||||
else
|
||||
LOG_W(NAS, "Optional PDU Address IE was not provided\n");
|
||||
|
||||
set_qfi_pduid(msg.qos_rules.rule->qfi, sm_header.pdu_session_id);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user