Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-AMF
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
1
Issues
1
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenXG
OpenXG-AMF
Commits
32bac856
Commit
32bac856
authored
Sep 15, 2022
by
Tien Thinh NGUYEN
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Code cleanup
parent
516f67d2
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
77 additions
and
89 deletions
+77
-89
src/amf-app/amf_n2.cpp
src/amf-app/amf_n2.cpp
+58
-87
src/ngap/ngap_app/ngap_message_callback.hpp
src/ngap/ngap_app/ngap_message_callback.hpp
+19
-2
No files found.
src/amf-app/amf_n2.cpp
View file @
32bac856
...
...
@@ -361,6 +361,7 @@ void amf_n2::handle_itti_message(
}
// store Paging DRX in gNB context
// TODO: To fix DefaultPagingDRX value
int
defPagingDrx
=
itti_msg
->
ngSetupReq
->
getDefaultPagingDRX
();
if
(
defPagingDrx
==
-
1
)
{
Logger
::
amf_n2
().
error
(
"Missing Mandatory IE DefaultPagingDRX"
);
...
...
@@ -636,14 +637,14 @@ void amf_n2::handle_itti_message(itti_initial_ue_message& init_ue_msg) {
if
(
init_ue_msg
.
initUeMsg
->
getRRCEstablishmentCause
()
==
-
1
)
{
Logger
::
amf_n2
().
warn
(
"IE RRCEstablishmentCause not present"
);
itti_msg
->
rrc_cause
=
-
1
;
// not present
itti_msg
->
rrc_cause
=
-
1
;
// not present
, TODO with optional
}
else
{
itti_msg
->
rrc_cause
=
init_ue_msg
.
initUeMsg
->
getRRCEstablishmentCause
();
}
if
(
init_ue_msg
.
initUeMsg
->
getUeContextRequest
()
==
-
1
)
{
Logger
::
amf_n2
().
warn
(
"IE UeContextRequest not present"
);
itti_msg
->
ueCtxReq
=
-
1
;
// not present
itti_msg
->
ueCtxReq
=
-
1
;
// not present
, TODO with optional
}
else
{
itti_msg
->
ueCtxReq
=
init_ue_msg
.
initUeMsg
->
getUeContextRequest
();
}
...
...
@@ -661,11 +662,7 @@ void amf_n2::handle_itti_message(itti_initial_ue_message& init_ue_msg) {
unc
->
s_setid
,
unc
->
s_pointer
,
unc
->
s_tmsi
);
}
// uint8_t* nas_buf = nullptr;
// size_t nas_len = 0;
if
(
init_ue_msg
.
initUeMsg
->
getNasPdu
(
itti_msg
->
nas_buf
))
{
// itti_msg->nas_buf = blk2bstr(nas_buf, nas_len);
}
else
{
if
(
!
init_ue_msg
.
initUeMsg
->
getNasPdu
(
itti_msg
->
nas_buf
))
{
Logger
::
amf_n2
().
error
(
"Missing IE NAS-PDU"
);
return
;
}
...
...
@@ -748,14 +745,12 @@ void amf_n2::handle_itti_message(itti_ul_nas_transport& ul_nas_transport) {
itti_msg
->
amf_ue_ngap_id
=
amf_ue_ngap_id
;
itti_msg
->
ran_ue_ngap_id
=
ran_ue_ngap_id
;
itti_msg
->
is_guti_valid
=
false
;
// uint8_t* nas_buf = nullptr;
// size_t nas_len = 0;
if
(
ul_nas_transport
.
ulNas
->
getNasPdu
(
itti_msg
->
nas_msg
))
{
// itti_msg->nas_msg = blk2bstr(nas_buf, nas_len);
}
else
{
if
(
!
ul_nas_transport
.
ulNas
->
getNasPdu
(
itti_msg
->
nas_msg
))
{
Logger
::
amf_n2
().
error
(
"Missing IE NAS-PDU"
);
return
;
}
// UserLocation
NrCgi_t
cgi
=
{};
Tai_t
tai
=
{};
...
...
@@ -803,8 +798,7 @@ void amf_n2::handle_itti_message(itti_dl_nas_transport& dl_nas_transport) {
ngap_msg
->
setAmfUeNgapId
(
dl_nas_transport
.
amf_ue_ngap_id
);
ngap_msg
->
setRanUeNgapId
(
dl_nas_transport
.
ran_ue_ngap_id
);
ngap_msg
->
setNasPdu
(
dl_nas_transport
.
nas
);
// (uint8_t*) bdata(bstrcpy(dl_nas_transport.nas)),
// blength(dl_nas_transport.nas));
uint8_t
buffer
[
BUFFER_SIZE_1024
];
int
encoded_size
=
ngap_msg
->
encode2Buffer
(
buffer
,
BUFFER_SIZE_1024
);
bstring
b
=
blk2bstr
(
buffer
,
encoded_size
);
...
...
@@ -873,10 +867,8 @@ void amf_n2::handle_itti_message(itti_initial_context_setup_request& itti_msg) {
}
msg
->
setAllowedNssai
(
list
);
// bdestroy_wrapper(&itti_msg.nas);
// bdestroy_wrapper(&itti_msg.kgnb);
if
(
itti_msg
.
is_sr
or
itti_msg
.
is_pdu_exist
)
{
// Set UE R
A
dio Capability if available
// Set UE R
a
dio Capability if available
if
(
gc
->
ue_radio_cap_ind
)
{
msg
->
setUERadioCapability
(
gc
->
ue_radio_cap_ind
);
}
...
...
@@ -980,13 +972,7 @@ void amf_n2::handle_itti_message(
std
::
vector
<
PDUSessionResourceSetupRequestItem_t
>
list
;
PDUSessionResourceSetupRequestItem_t
item
=
{};
item
.
pduSessionId
=
itti_msg
.
pdu_session_id
;
// uint8_t* nas_pdu = (uint8_t*) calloc(1, blength(itti_msg.nas) + 1);
// uint8_t* buf_tmp = (uint8_t*) bdata(itti_msg.nas);
// if (buf_tmp != nullptr) memcpy(nas_pdu, buf_tmp, blength(itti_msg.nas));
// nas_pdu[blength(itti_msg.nas)] = '\0';
// item.pduSessionNAS_PDU = nas_pdu;
// item.sizeofpduSessionNAS_PDU = blength(itti_msg.nas);
item
.
nas_pdu
=
bstrcpy
(
itti_msg
.
nas
);
item
.
nas_pdu
=
bstrcpy
(
itti_msg
.
nas
);
// Get NSSAI from PDU Session Context
std
::
shared_ptr
<
nas_context
>
nc
=
{};
...
...
@@ -1075,16 +1061,7 @@ void amf_n2::handle_itti_message(
tmp
.
sd
=
itti_msg
.
s_NSSAI
.
getSd
();
tmp
.
sst
=
itti_msg
.
s_NSSAI
.
getSst
();
item
.
s_nssai
=
std
::
optional
<
S_Nssai
>
(
tmp
);
// item.s_nssai.sd = itti_msg.s_NSSAI.getSd();
// item.s_nssai.sst = itti_msg.s_NSSAI.getSst();
// TODO: to be removed
// uint8_t* nas_pdu = (uint8_t*) calloc(1, blength(itti_msg.nas) + 1);
// uint8_t* buf_tmp = (uint8_t*) bdata(itti_msg.nas);
// if (buf_tmp != nullptr) memcpy(nas_pdu, buf_tmp, blength(itti_msg.nas));
// nas_pdu[blength(itti_msg.nas)] = '\0';
// item.pduSessionNAS_PDU = nas_pdu;
// item.sizeofpduSessionNAS_PDU = blength(itti_msg.nas);
item
.
nas_pdu
=
bstrcpy
(
itti_msg
.
nas
);
list
.
push_back
(
item
);
...
...
@@ -1131,11 +1108,6 @@ void amf_n2::handle_itti_message(
release_cmd_msg
->
setAmfUeNgapId
(
itti_msg
.
amf_ue_ngap_id
);
release_cmd_msg
->
setRanUeNgapId
(
itti_msg
.
ran_ue_ngap_id
);
// TODO: Should be removed
// uint8_t* nas_pdu = (uint8_t*) calloc(1, blength(itti_msg.nas) + 1);
// uint8_t* buf_tmp = (uint8_t*) bdata(itti_msg.nas);
// if (buf_tmp != nullptr) memcpy(nas_pdu, buf_tmp, blength(itti_msg.nas));
// nas_pdu[blength(itti_msg.nas)] = '\0';
release_cmd_msg
->
setNasPdu
(
itti_msg
.
nas
);
std
::
vector
<
PDUSessionResourceToReleaseItem_t
>
list
;
...
...
@@ -1159,24 +1131,27 @@ void amf_n2::handle_itti_message(
bstring
b
=
blk2bstr
(
buffer
,
encoded_size
);
sctp_s_38412
.
sctp_send_msg
(
gc
->
sctp_assoc_id
,
unc
->
sctp_stream_send
,
&
b
);
// free memory
// free_wrapper((void**) &nas_pdu);
bdestroy_wrapper
(
&
b
);
}
//------------------------------------------------------------------------------
void
amf_n2
::
handle_itti_message
(
itti_ue_context_release_request
&
itti_msg
)
{
Logger
::
amf_n2
().
debug
(
"Handle UE Context Release Request ..."
);
unsigned
long
amf_ue_ngap_id
=
itti_msg
.
ueCtxRel
->
getAmfUeNgapId
();
uint32_t
ran_ue_ngap_id
=
itti_msg
.
ueCtxRel
->
getRanUeNgapId
();
e_Ngap_CauseRadioNetwork
cause
=
{};
itti_msg
.
ueCtxRel
->
getCauseRadioNetwork
(
cause
);
std
::
unique_ptr
<
UEContextReleaseCommandMsg
>
ueCtxRelCmd
=
std
::
make_unique
<
UEContextReleaseCommandMsg
>
();
ueCtxRelCmd
->
setUeNgapIdPair
(
amf_ue_ngap_id
,
ran_ue_ngap_id
);
ueCtxRelCmd
->
setCauseRadioNetwork
(
cause
);
uint8_t
buffer
[
BUFFER_SIZE_512
];
int
encoded_size
=
ueCtxRelCmd
->
encode2Buffer
(
buffer
,
BUFFER_SIZE_512
);
bstring
b
=
blk2bstr
(
buffer
,
encoded_size
);
sctp_s_38412
.
sctp_send_msg
(
itti_msg
.
assoc_id
,
itti_msg
.
stream
,
&
b
);
bdestroy_wrapper
(
&
b
);
}
...
...
@@ -1221,11 +1196,8 @@ void amf_n2::handle_itti_message(itti_ue_context_release_command& itti_msg) {
bstring
b
=
blk2bstr
(
buffer
,
encoded_size
);
sctp_s_38412
.
sctp_send_msg
(
gc
->
sctp_assoc_id
,
unc
->
sctp_stream_send
,
&
b
);
bdestroy_wrapper
(
&
b
);
// return;
/*
* Send ITTI to N11 SBI, notify CommunicationFailure Report, RAN Cause
*/
// Send ITTI to N11 SBI, notify CommunicationFailure Report, RAN Cause
std
::
shared_ptr
<
nas_context
>
nc
=
{};
if
(
!
amf_n1_inst
->
is_amf_ue_id_2_nas_context
(
itti_msg
.
amf_ue_ngap_id
,
nc
))
{
Logger
::
amf_n2
().
warn
(
...
...
@@ -1687,16 +1659,14 @@ bool amf_n2::handle_itti_message(itti_handover_required& itti_msg) {
item
.
s_nssai
.
sd
=
psc
->
snssai
.
sD
;
// item.pduSessionNAS_PDU = nullptr;
unsigned
int
data_len
=
n2_sm
.
length
();
unsigned
char
*
data
=
(
unsigned
char
*
)
malloc
(
data_len
+
1
);
memset
(
data
,
0
,
data_len
+
1
);
memcpy
((
void
*
)
data
,
(
void
*
)
n2_sm
.
c_str
(),
data_len
);
item
.
pduSessionResourceSetupRequestTransfer
.
buf
=
data
;
item
.
pduSessionResourceSetupRequestTransfer
.
buf
=
(
unsigned
char
*
)
malloc
(
data_len
+
1
);
memcpy
(
(
void
*
)
item
.
pduSessionResourceSetupRequestTransfer
.
buf
,
(
void
*
)
n2_sm
.
c_str
(),
data_len
);
item
.
pduSessionResourceSetupRequestTransfer
.
size
=
data_len
;
list
.
push_back
(
item
);
// free memory
// free_wrapper((void**) &data);
}
}
else
{
result
=
false
;
}
...
...
@@ -1814,7 +1784,7 @@ void amf_n2::handle_itti_message(itti_handover_request_Ack& itti_msg) {
}
}
//
s
end HandoverCommandMsg to Source gNB
//
S
end HandoverCommandMsg to Source gNB
std
::
unique_ptr
<
HandoverCommandMsg
>
handovercommand
=
std
::
make_unique
<
HandoverCommandMsg
>
();
handovercommand
->
setAmfUeNgapId
(
amf_ue_ngap_id
);
...
...
@@ -2056,41 +2026,41 @@ void amf_n2::handle_itti_message(itti_uplink_ran_status_transfer& itti_msg) {
ran_status_transfer
);
dRBSubjectList
amf_m_list
=
{};
ran_status_transfer
.
getdRBSubject_list
(
amf_m_list
);
std
::
vector
<
dRBSubjectItem
>
d
RBSubjectItemL
ist
;
amf_m_list
.
getdRBSubjectItem
(
d
RBSubjectItemL
ist
);
std
::
vector
<
dRBSubjectItem
>
d
rb_subject_item_l
ist
;
amf_m_list
.
getdRBSubjectItem
(
d
rb_subject_item_l
ist
);
// TODO: check size
dRBStatusDL
status
DL
=
{};
dRBStatusUL
status
UL
=
{};
Ngap_DRB_ID_t
d
RBID
=
{};
d
RBSubjectItemList
[
0
].
getdRBSubjectItem
(
dRBID
,
statusUL
,
statusDL
);
dRBStatusUL18
status
UL
18
=
{};
DRBStatusDL18
status
DL
18
=
{};
status
DL
.
getDRBStatusDL18
(
statusDL
18
);
status
UL
.
getdRBStatusUL
(
statusUL
18
);
COUNTValueForPDCP_SN18
count
ValueUL
=
{};
COUNTValueForPDCP_SN18
count
ValueDL
=
{};
status
UL18
.
getcountvalue
(
countValueUL
);
status
DL18
.
getcountvalue
(
countValueDL
);
dRBStatusDL
status
_dl
=
{};
dRBStatusUL
status
_ul
=
{};
Ngap_DRB_ID_t
d
rb_id
=
{};
d
rb_subject_item_list
[
0
].
getdRBSubjectItem
(
drb_id
,
status_ul
,
status_dl
);
dRBStatusUL18
status
_ul_
18
=
{};
DRBStatusDL18
status
_dl_
18
=
{};
status
_dl
.
getDRBStatusDL18
(
status_dl_
18
);
status
_ul
.
getdRBStatusUL
(
status_ul_
18
);
COUNTValueForPDCP_SN18
count
_value_ul
=
{};
COUNTValueForPDCP_SN18
count
_value_dl
=
{};
status
_ul_18
.
getcountvalue
(
count_value_ul
);
status
_dl_18
.
getcountvalue
(
count_value_dl
);
long
amf_ul_pdcp
=
{
0
};
long
amf_hfn_ul_pdcp
=
{
0
};
count
ValueUL
.
getvalue
(
amf_ul_pdcp
,
amf_hfn_ul_pdcp
);
count
_value_ul
.
getvalue
(
amf_ul_pdcp
,
amf_hfn_ul_pdcp
);
long
amf_dl_pdcp
=
{
0
};
long
amf_hfn_dl_pdcp
=
{
0
};
count
ValueDL
.
getvalue
(
amf_dl_pdcp
,
amf_hfn_dl_pdcp
);
count
_value_dl
.
getvalue
(
amf_dl_pdcp
,
amf_hfn_dl_pdcp
);
long
amf_drb_id
=
{
0
};
amf_drb_id
=
d
RBID
;
amf_drb_id
=
d
rb_id
;
std
::
unique_ptr
<
DownlinkRANStatusTransfer
>
d
ownLinkranstatus
transfer
=
std
::
unique_ptr
<
DownlinkRANStatusTransfer
>
d
l_ran_status_
transfer
=
std
::
make_unique
<
DownlinkRANStatusTransfer
>
();
d
ownLinkranstatus
transfer
->
setAmfUeNgapId
(
amf_ue_ngap_id
);
d
ownLinkranstatus
transfer
->
setRanUeNgapId
(
unc
->
target_ran_ue_ngap_id
);
d
ownLinkranstatus
transfer
->
setRANStatusTransfer_TransparentContainer
(
d
l_ran_status_
transfer
->
setAmfUeNgapId
(
amf_ue_ngap_id
);
d
l_ran_status_
transfer
->
setRanUeNgapId
(
unc
->
target_ran_ue_ngap_id
);
d
l_ran_status_
transfer
->
setRANStatusTransfer_TransparentContainer
(
amf_drb_id
,
amf_ul_pdcp
,
amf_hfn_ul_pdcp
,
amf_dl_pdcp
,
amf_hfn_dl_pdcp
);
uint8_t
buffer
[
BUFFER_SIZE_1024
];
int
encode_size
=
d
ownLinkranstatus
transfer
->
encode2Buffer
(
buffer
,
BUFFER_SIZE_1024
);
d
l_ran_status_
transfer
->
encode2Buffer
(
buffer
,
BUFFER_SIZE_1024
);
bstring
b
=
blk2bstr
(
buffer
,
encode_size
);
sctp_s_38412
.
sctp_send_msg
(
unc
->
target_gnb_assoc_id
,
0
,
&
b
);
bdestroy_wrapper
(
&
b
);
...
...
@@ -2118,19 +2088,20 @@ void amf_n2::handle_itti_message(itti_rereoute_nas& itti_msg) {
return
;
}
RerouteNASRequest
reroute
NASR
equest
=
{};
reroute
NASR
equest
.
setRanUeNgapId
(
itti_msg
.
ran_ue_ngap_id
);
reroute
NASR
equest
.
setAmfUeNgapId
(
itti_msg
.
amf_ue_ngap_id
);
if
(
!
reroute
NASR
equest
.
setAMFSetID
(
itti_msg
.
amf_set_id
))
return
;
RerouteNASRequest
reroute
_nas_r
equest
=
{};
reroute
_nas_r
equest
.
setRanUeNgapId
(
itti_msg
.
ran_ue_ngap_id
);
reroute
_nas_r
equest
.
setAmfUeNgapId
(
itti_msg
.
amf_ue_ngap_id
);
if
(
!
reroute
_nas_r
equest
.
setAMFSetID
(
itti_msg
.
amf_set_id
))
return
;
if
(
unc
->
initialUEMsg
.
size
>
0
)
reroute
NASR
equest
.
setNgapMessage
(
reroute
_nas_r
equest
.
setNgapMessage
(
unc
->
initialUEMsg
);
// Include InitialUEMessage
// TODO: AllowedNSSAI (Optional)
uint8_t
buffer
[
BUFFER_SIZE_2048
];
int
encoded_size
=
rerouteNASRequest
.
encode2Buffer
(
buffer
,
BUFFER_SIZE_2048
);
bstring
b
=
blk2bstr
(
buffer
,
encoded_size
);
int
encoded_size
=
reroute_nas_request
.
encode2Buffer
(
buffer
,
BUFFER_SIZE_2048
);
bstring
b
=
blk2bstr
(
buffer
,
encoded_size
);
amf_n2_inst
->
sctp_s_38412
.
sctp_send_msg
(
unc
->
gnb_assoc_id
,
unc
->
sctp_stream_send
,
&
b
);
...
...
@@ -2142,15 +2113,15 @@ void amf_n2::send_handover_preparation_failure(
const
unsigned
long
amf_ue_ngap_id
,
const
uint32_t
ran_ue_ngap_id
,
const
sctp_assoc_id_t
&
gnb_assoc_id
)
{
// Create HandoverPreparationFailure message to be sent to target gNB
std
::
unique_ptr
<
HandoverPreparationFailure
>
ho
PreparationFailure
=
std
::
unique_ptr
<
HandoverPreparationFailure
>
ho
_preparation_failure_msg
=
std
::
make_unique
<
HandoverPreparationFailure
>
();
ho
PreparationFailure
->
setAmfUeNgapId
(
amf_ue_ngap_id
);
ho
PreparationFailure
->
setRanUeNgapId
(
amf_ue_ngap_id
);
ho
PreparationFailure
->
setCause
(
Ngap_Cause_PR_NOTHING
);
ho
_preparation_failure_msg
->
setAmfUeNgapId
(
amf_ue_ngap_id
);
ho
_preparation_failure_msg
->
setRanUeNgapId
(
amf_ue_ngap_id
);
ho
_preparation_failure_msg
->
setCause
(
Ngap_Cause_PR_NOTHING
);
uint8_t
buffer
[
BUFFER_SIZE_1024
];
int
encoded_size
=
ho
PreparationFailure
->
encode2Buffer
(
buffer
,
BUFFER_SIZE_1024
);
ho
_preparation_failure_msg
->
encode2Buffer
(
buffer
,
BUFFER_SIZE_1024
);
bstring
b
=
blk2bstr
(
buffer
,
encoded_size
);
sctp_s_38412
.
sctp_send_msg
(
gnb_assoc_id
,
0
,
&
b
);
...
...
src/ngap/ngap_app/ngap_message_callback.hpp
View file @
32bac856
...
...
@@ -78,6 +78,7 @@ int ngap_amf_handle_ng_setup_request(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -124,6 +125,7 @@ int ngap_amf_handle_initial_ue_message(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -152,6 +154,7 @@ int ngap_amf_handle_uplink_nas_transport(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -183,13 +186,15 @@ int ngap_amf_handle_initial_context_setup_response(
Logger
::
ngap
().
debug
(
"Decode PduSessionResourceSetupResponseList IE error or this IE is not "
"available"
);
return
0
;
// TODO:
return
RETURNok
;
}
Logger
::
ngap
().
debug
(
"Sending ITTI Initial Context Setup Response to TASK_AMF_SBI"
);
auto
itti_msg
=
std
::
make_shared
<
itti_nsmf_pdusession_update_sm_context
>
(
TASK_NGAP
,
TASK_AMF_SBI
);
// TODO: with multiple PDU sessions
itti_msg
->
pdu_session_id
=
list
[
0
].
pduSessionId
;
itti_msg
->
n2sm
=
blk2bstr
(
list
[
0
].
pduSessionResourceSetupResponseTransfer
.
buf
,
...
...
@@ -204,6 +209,7 @@ int ngap_amf_handle_initial_context_setup_response(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_SBI"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -244,6 +250,7 @@ int ngap_amf_handle_ue_radio_cap_indication(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -271,6 +278,7 @@ int ngap_amf_handle_ue_context_release_request(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -309,6 +317,7 @@ int ngap_amf_handle_ue_context_release_complete(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -372,6 +381,7 @@ int ngap_amf_handle_pdu_session_resource_release_response(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_SBI"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -438,8 +448,9 @@ int ngap_amf_handle_pdu_session_resource_setup_response(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_SBI"
,
i
->
get_msg_name
());
return
RETURNerror
;
}
return
0
;
return
RETURNok
;
}
// TTN: Should be removed
...
...
@@ -573,6 +584,7 @@ int ngap_amf_handle_pdu_session_resource_modify_response(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_SBI"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
}
...
...
@@ -737,6 +749,7 @@ int handover_preparation(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -782,6 +795,7 @@ int handover_notification(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -812,6 +826,7 @@ int handover_request(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
@@ -895,6 +910,7 @@ int ng_reset(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
...
...
@@ -1196,6 +1212,7 @@ int uplink_ran_status_transfer(
Logger
::
ngap
().
error
(
"Could not send ITTI message %s to task TASK_AMF_N2"
,
itti_msg
->
get_msg_name
());
return
RETURNerror
;
}
return
RETURNok
;
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment