Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
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
spbro
OpenXG-RAN
Commits
2fb38167
Commit
2fb38167
authored
Sep 28, 2021
by
Masayuki Harada
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix NRUE NAS security configuration.
parent
fccb986f
Changes
3
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
158 additions
and
105 deletions
+158
-105
openair2/RRC/NR_UE/rrc_UE.c
openair2/RRC/NR_UE/rrc_UE.c
+22
-2
openair3/NAS/NR_UE/nr_nas_msg_sim.c
openair3/NAS/NR_UE/nr_nas_msg_sim.c
+126
-103
openair3/NAS/NR_UE/nr_nas_msg_sim.h
openair3/NAS/NR_UE/nr_nas_msg_sim.h
+10
-0
No files found.
openair2/RRC/NR_UE/rrc_UE.c
View file @
2fb38167
...
@@ -1571,7 +1571,6 @@ int8_t nr_rrc_ue_decode_ccch( const protocol_ctxt_t *const ctxt_pP, const NR_SRB
...
@@ -1571,7 +1571,6 @@ int8_t nr_rrc_ue_decode_ccch( const protocol_ctxt_t *const ctxt_pP, const NR_SRB
}
}
extern
uint8_t
global_kgnb
[
32
];
//-----------------------------------------------------------------------------
//-----------------------------------------------------------------------------
void
void
nr_rrc_ue_process_securityModeCommand
(
nr_rrc_ue_process_securityModeCommand
(
...
@@ -1658,7 +1657,6 @@ extern uint8_t global_kgnb[32];
...
@@ -1658,7 +1657,6 @@ extern uint8_t global_kgnb[32];
uint8_t
*
kRRCint
=
NULL
;
uint8_t
*
kRRCint
=
NULL
;
uint8_t
*
k_kdf
=
NULL
;
uint8_t
*
k_kdf
=
NULL
;
#ifndef PHYSIM
#ifndef PHYSIM
memcpy
(
NR_UE_rrc_inst
[
ctxt_pP
->
module_id
].
kgnb
,
global_kgnb
,
32
);
k_kdf
=
NULL
;
k_kdf
=
NULL
;
nr_derive_key_up_enc
(
NR_UE_rrc_inst
[
ctxt_pP
->
module_id
].
cipheringAlgorithm
,
nr_derive_key_up_enc
(
NR_UE_rrc_inst
[
ctxt_pP
->
module_id
].
cipheringAlgorithm
,
NR_UE_rrc_inst
[
ctxt_pP
->
module_id
].
kgnb
,
NR_UE_rrc_inst
[
ctxt_pP
->
module_id
].
kgnb
,
...
@@ -2525,6 +2523,28 @@ nr_rrc_ue_establish_srb2(
...
@@ -2525,6 +2523,28 @@ nr_rrc_ue_establish_srb2(
NR_RRC_DCCH_DATA_IND
(
msg_p
).
gNB_index
);
NR_RRC_DCCH_DATA_IND
(
msg_p
).
gNB_index
);
break
;
break
;
case
NAS_KENB_REFRESH_REQ
:
memcpy
((
void
*
)
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
,
(
void
*
)
NAS_KENB_REFRESH_REQ
(
msg_p
).
kenb
,
sizeof
(
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
));
LOG_D
(
RRC
,
"[UE %d] Received %s: refreshed RRC::KgNB = "
"%02x%02x%02x%02x"
"%02x%02x%02x%02x"
"%02x%02x%02x%02x"
"%02x%02x%02x%02x"
"%02x%02x%02x%02x"
"%02x%02x%02x%02x"
"%02x%02x%02x%02x"
"%02x%02x%02x%02x
\n
"
,
ue_mod_id
,
ITTI_MSG_NAME
(
msg_p
),
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
0
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
1
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
2
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
3
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
4
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
5
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
6
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
7
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
8
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
9
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
10
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
11
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
12
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
13
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
14
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
15
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
16
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
17
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
18
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
19
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
20
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
21
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
22
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
23
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
24
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
25
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
26
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
27
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
28
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
29
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
30
],
NR_UE_rrc_inst
[
ue_mod_id
].
kgnb
[
31
]);
break
;
case
NAS_UPLINK_DATA_REQ
:
{
case
NAS_UPLINK_DATA_REQ
:
{
uint32_t
length
;
uint32_t
length
;
uint8_t
*
buffer
;
uint8_t
*
buffer
;
...
...
openair3/NAS/NR_UE/nr_nas_msg_sim.c
View file @
2fb38167
This diff is collapsed.
Click to expand it.
openair3/NAS/NR_UE/nr_nas_msg_sim.h
View file @
2fb38167
...
@@ -64,6 +64,16 @@
...
@@ -64,6 +64,16 @@
#define INITIAL_REGISTRATION 0b001
#define INITIAL_REGISTRATION 0b001
/* Security Key for SA UE */
typedef
struct
{
uint8_t
kausf
[
32
];
uint8_t
kseaf
[
32
];
uint8_t
kamf
[
32
];
uint8_t
knas_int
[
16
];
uint8_t
res
[
16
];
uint8_t
rand
[
16
];
uint8_t
kgnb
[
32
];
}
ue_sa_security_key_t
;
typedef
enum
fgs_protocol_discriminator_e
{
typedef
enum
fgs_protocol_discriminator_e
{
/* Protocol discriminator identifier for 5GS Mobility Management */
/* Protocol discriminator identifier for 5GS Mobility Management */
...
...
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