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
5afc944b
Commit
5afc944b
authored
Nov 23, 2021
by
Tien-Thinh Nguyen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
use hardcoded value for SST/SD
parent
d789c56a
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
37 additions
and
17 deletions
+37
-17
src/amf-app/amf_n1.cpp
src/amf-app/amf_n1.cpp
+15
-7
src/amf-app/amf_n11.cpp
src/amf-app/amf_n11.cpp
+14
-8
src/amf-app/amf_n2.cpp
src/amf-app/amf_n2.cpp
+8
-2
No files found.
src/amf-app/amf_n1.cpp
View file @
5afc944b
...
...
@@ -1172,6 +1172,13 @@ void amf_n1::registration_request_handle(
}
}
for
(
auto
s
:
nc
.
get
()
->
requestedNssai
)
{
Logger
::
amf_n1
().
debug
(
"Requested NSSAI SST (0x%x) SD (0x%x) hplmnSST (0x%x) hplmnSD "
"(%d)"
,
s
.
sst
,
s
.
sd
,
s
.
mHplmnSst
,
s
.
mHplmnSd
);
}
// Store NAS information into nas_context
// Run the corresponding registration procedure
switch
(
reg_type
)
{
...
...
@@ -3238,14 +3245,15 @@ void amf_n1::initialize_registration_accept(
Logger
::
amf_n1
().
warn
(
"Invalid SST/SD"
);
return
;
}
nssai
.
push_back
(
snssai
);
// Check with the requested NSSAI from UE
for
(
auto
rn
:
nc
.
get
()
->
requestedNssai
)
{
if
((
rn
.
sst
==
snssai
.
sst
)
and
(
rn
.
sd
==
snssai
.
sd
))
{
nssai
.
push_back
(
snssai
);
break
;
}
}
/* for (auto rn : nc.get()->requestedNssai) {
if ((rn.sst == snssai.sst) and (rn.sd == snssai.sd)) {
nssai.push_back(snssai);
break;
}
}
*/
}
}
}
...
...
src/amf-app/amf_n11.cpp
View file @
5afc944b
...
...
@@ -315,6 +315,10 @@ void amf_n11::handle_itti_message(itti_nsmf_pdusession_create_sm_context& smf) {
psc
.
get
()
->
plmn
.
mcc
=
smf
.
plmn
.
mcc
;
psc
.
get
()
->
plmn
.
mnc
=
smf
.
plmn
.
mnc
;
Logger
::
amf_n1
().
debug
(
"PDU Session Context, NSSAI SST (0x%x) SD %s"
,
psc
.
get
()
->
snssai
.
sST
,
psc
.
get
()
->
snssai
.
sD
.
c_str
());
// parse binary dnn and store
std
::
string
dnn
=
"default"
;
// If DNN doesn't available, use "default"
if
((
smf
.
dnn
!=
nullptr
)
&&
(
blength
(
smf
.
dnn
)
>
0
))
{
...
...
@@ -438,20 +442,22 @@ void amf_n11::handle_pdu_session_initial_request(
std
::
string
remote_uri
=
smf_addr
+
"/nsmf-pdusession/"
+
smf_api_version
+
"/sm-contexts"
;
nlohmann
::
json
pdu_session_establishment_request
;
pdu_session_establishment_request
[
"supi"
]
=
supi
.
c_str
();
pdu_session_establishment_request
[
"pei"
]
=
"imei-200000000000001"
;
pdu_session_establishment_request
[
"gpsi"
]
=
"msisdn-200000000001"
;
pdu_session_establishment_request
[
"dnn"
]
=
dnn
.
c_str
();
pdu_session_establishment_request
[
"sNssai"
][
"sst"
]
=
psc
.
get
()
->
snssai
.
sST
;
pdu_session_establishment_request
[
"sNssai"
][
"sd"
]
=
psc
.
get
()
->
snssai
.
sD
;
pdu_session_establishment_request
[
"supi"
]
=
supi
.
c_str
();
pdu_session_establishment_request
[
"pei"
]
=
"imei-200000000000001"
;
pdu_session_establishment_request
[
"gpsi"
]
=
"msisdn-200000000001"
;
pdu_session_establishment_request
[
"dnn"
]
=
dnn
.
c_str
();
pdu_session_establishment_request
[
"sNssai"
][
"sst"
]
=
1
;
// psc.get()->snssai.sST;
pdu_session_establishment_request
[
"sNssai"
][
"sd"
]
=
"1"
;
// psc.get()->snssai.sD.c_str();
pdu_session_establishment_request
[
"pduSessionId"
]
=
psc
.
get
()
->
pdu_session_id
;
pdu_session_establishment_request
[
"requestType"
]
=
"INITIAL_REQUEST"
;
// TODO: from SM_MSG
pdu_session_establishment_request
[
"servingNfId"
]
=
"servingNfId"
;
pdu_session_establishment_request
[
"servingNetwork"
][
"mcc"
]
=
psc
.
get
()
->
plmn
.
mcc
;
psc
.
get
()
->
plmn
.
mcc
.
c_str
()
;
pdu_session_establishment_request
[
"servingNetwork"
][
"mnc"
]
=
psc
.
get
()
->
plmn
.
mnc
;
psc
.
get
()
->
plmn
.
mnc
.
c_str
()
;
pdu_session_establishment_request
[
"anType"
]
=
"3GPP_ACCESS"
;
// TODO
pdu_session_establishment_request
[
"smContextStatusUri"
]
=
"http://"
+
...
...
src/amf-app/amf_n2.cpp
View file @
5afc944b
...
...
@@ -935,6 +935,8 @@ void amf_n2::handle_itti_message(itti_initial_context_setup_request& itti_msg) {
item
.
s_nssai
.
sd
=
psc
.
get
()
->
snssai
.
sD
;
}
item
.
s_nssai
.
sst
=
"1"
;
item
.
s_nssai
.
sd
=
"000001"
;
Logger
::
amf_n2
().
debug
(
"S_NSSAI (SST, SD) %s, %s"
,
item
.
s_nssai
.
sst
.
c_str
(),
item
.
s_nssai
.
sd
.
c_str
());
...
...
@@ -1037,10 +1039,14 @@ void amf_n2::handle_itti_message(
item
.
s_nssai
.
sst
=
"01"
;
// TODO: get from N1N2msgTranferMsg
item
.
s_nssai
.
sd
=
"none"
;
// TODO: get from N1N2msgTranferMsg
}
else
{
item
.
s_nssai
.
sst
=
std
::
to_string
(
psc
.
get
()
->
snssai
.
sST
);
item
.
s_nssai
.
sd
=
psc
.
get
()
->
snssai
.
sD
;
// USE HARDCODED for NOW
item
.
s_nssai
.
sst
=
"01"
;
// std::to_string(psc.get()->snssai.sST);
item
.
s_nssai
.
sd
=
"000001"
;
// psc.get()->snssai.sD;
}
item
.
s_nssai
.
sst
=
"01"
;
// std::to_string(psc.get()->snssai.sST);
item
.
s_nssai
.
sd
=
"000001"
;
// psc.get()->snssai.sD;
// item.s_nssai.sst = std::to_string(psc.get()->snssai.sST);
// item.s_nssai.sd = psc.get()->snssai.sD;
...
...
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