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
585eb1d3
Commit
585eb1d3
authored
Mar 09, 2023
by
laurent
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
verified rfsim with splits, and quectel 2 sessions (no split)
parent
14caab46
Changes
16
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
94 additions
and
97 deletions
+94
-97
ci-scripts/conf_files/gNB_SA_CU.conf
ci-scripts/conf_files/gNB_SA_CU.conf
+8
-13
ci-scripts/conf_files/gNB_SA_DU.conf
ci-scripts/conf_files/gNB_SA_DU.conf
+3
-7
ci-scripts/conf_files/gnb-cucp.sa.f1.conf
ci-scripts/conf_files/gnb-cucp.sa.f1.conf
+11
-12
ci-scripts/conf_files/gnb-cuup.sa.f1.conf
ci-scripts/conf_files/gnb-cuup.sa.f1.conf
+10
-8
openair2/F1AP/f1ap_cu_ue_context_management.c
openair2/F1AP/f1ap_cu_ue_context_management.c
+1
-1
openair2/RRC/NR/cucp_cuup_e1ap.c
openair2/RRC/NR/cucp_cuup_e1ap.c
+1
-1
openair2/RRC/NR/nr_rrc_defs.h
openair2/RRC/NR/nr_rrc_defs.h
+1
-2
openair2/RRC/NR/rrc_gNB.c
openair2/RRC/NR/rrc_gNB.c
+40
-39
openair2/RRC/NR/rrc_gNB_GTPV1U.c
openair2/RRC/NR/rrc_gNB_GTPV1U.c
+1
-1
openair2/RRC/NR/rrc_gNB_NGAP.c
openair2/RRC/NR/rrc_gNB_NGAP.c
+2
-1
openair2/RRC/NR/rrc_gNB_UE_context.c
openair2/RRC/NR/rrc_gNB_UE_context.c
+11
-3
openair2/RRC/NR/rrc_gNB_UE_context.h
openair2/RRC/NR/rrc_gNB_UE_context.h
+1
-1
openair2/RRC/NR/rrc_gNB_nsa.c
openair2/RRC/NR/rrc_gNB_nsa.c
+2
-5
openair2/RRC/NR/rrc_gNB_radio_bearers.c
openair2/RRC/NR/rrc_gNB_radio_bearers.c
+0
-1
openair3/NGAP/ngap_gNB_handlers.c
openair3/NGAP/ngap_gNB_handlers.c
+1
-1
openair3/NGAP/ngap_gNB_nas_procedures.c
openair3/NGAP/ngap_gNB_nas_procedures.c
+1
-1
No files found.
ci-scripts/conf_files/gNB_SA_CU.conf
View file @
585eb1d3
Active_gNBs
= (
"gNB-
Eurecom-CU
"
);
Active_gNBs
= (
"gNB-
OAI
"
);
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity
=
"none"
;
Num_Threads_PUSCH
=
8
;
...
...
@@ -8,15 +8,11 @@ gNBs =
{
//////////
Identification
parameters
:
gNB_ID
=
0
xe00
;
# cell_type = "CELL_MACRO_GNB";
gNB_name
=
"gNB-Eurecom-CU"
;
gNB_name
=
"gNB-OAI"
;
//
Tracking
area
code
,
0
x0000
and
0
xfffe
are
reserved
values
tracking_area_code
=
1
;
plmn_list
= ({
mcc
=
208
;
mnc
=
99
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
,
sd
=
0
xffffff
}) });
plmn_list
= ({
mcc
=
001
;
mnc
=
01
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
; }) });
nr_cellid
=
12345678
L
;
force_256qam_off
=
1
;
...
...
@@ -169,7 +165,7 @@ gNBs =
//////////
AMF
parameters
:
amf_ip_address
= ( {
ipv4
=
"192.168.5.233
"
;
amf_ip_address
= ( {
ipv4
=
"192.168.70.132
"
;
ipv6
=
"192:168:30::17"
;
active
=
"yes"
;
preference
=
"ipv4"
;
...
...
@@ -178,11 +174,10 @@ gNBs =
NETWORK_INTERFACES
:
{
GNB_INTERFACE_NAME_FOR_NG_AMF
=
"eth0"
;
GNB_IPV4_ADDRESS_FOR_NG_AMF
=
"CI_GNB_IP_ADDR"
;
GNB_INTERFACE_NAME_FOR_NGU
=
"eth0"
;
GNB_IPV4_ADDRESS_FOR_NGU
=
"CI_GNB_IP_ADDR"
;
GNB_INTERFACE_NAME_FOR_NG_AMF
=
"demo-oai"
;
GNB_IPV4_ADDRESS_FOR_NG_AMF
=
"192.168.70.129/24"
;
GNB_INTERFACE_NAME_FOR_NGU
=
"demo-oai"
;
GNB_IPV4_ADDRESS_FOR_NGU
=
"192.168.70.129/24"
;
GNB_PORT_FOR_S1U
=
2152
;
# Spec 2152
};
}
...
...
ci-scripts/conf_files/gNB_SA_DU.conf
View file @
585eb1d3
Active_gNBs
= (
"gNB-
Eurecom-DU
"
);
Active_gNBs
= (
"gNB-
OAI
"
);
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity
=
"none"
;
...
...
@@ -7,15 +7,11 @@ gNBs =
{
//////////
Identification
parameters
:
gNB_ID
=
0
xe00
;
# cell_type = "CELL_MACRO_GNB";
gNB_name
=
"gNB-Eurecom-DU"
;
gNB_name
=
"gNB-OAI"
;
//
Tracking
area
code
,
0
x0000
and
0
xfffe
are
reserved
values
tracking_area_code
=
1
;
plmn_list
= ({
mcc
=
208
;
mnc
=
99
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
,
sd
=
0
xffffff
}) });
plmn_list
= ({
mcc
=
001
;
mnc
=
01
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
; }) });
nr_cellid
=
12345678
L
;
...
...
ci-scripts/conf_files/gnb-cucp.sa.f1.conf
View file @
585eb1d3
...
...
@@ -8,16 +8,12 @@ gNBs =
(
{
//////////
Identification
parameters
:
gNB_CU_ID
=
0
xe00
;
# cell_type = "CELL_MACRO_GNB";
gNB_ID
=
0
xe00
;
gNB_name
=
"gNB-OAI"
;
//
Tracking
area
code
,
0
x0000
and
0
xfffe
are
reserved
values
tracking_area_code
=
1
;
plmn_list
= ({
mcc
=
208
;
mnc
=
99
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
,
sd
=
0
xffffff
}) });
plmn_list
= ({
mcc
=
001
;
mnc
=
01
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
; }) });
nr_cellid
=
12345678
L
;
force_256qam_off
=
1
;
...
...
@@ -25,8 +21,8 @@ gNBs =
tr_s_preference
=
"f1"
;
local_s_if_name
=
"lo"
;
local_s_address
=
"1
92.168.72.140
"
;
remote_s_address
=
"1
92.168.72.14
3"
;
local_s_address
=
"1
27.0.0.4
"
;
remote_s_address
=
"1
27.0.0.
3"
;
local_s_portc
=
501
;
local_s_portd
=
2152
;
remote_s_portc
=
500
;
...
...
@@ -171,7 +167,7 @@ gNBs =
//////////
AMF
parameters
:
amf_ip_address
= ( {
ipv4
=
"192.168.7
1
.132"
;
amf_ip_address
= ( {
ipv4
=
"192.168.7
0
.132"
;
ipv6
=
"192:168:30::17"
;
active
=
"yes"
;
preference
=
"ipv4"
;
...
...
@@ -182,9 +178,9 @@ gNBs =
(
{
type
=
"cp"
;
ipv4_cucp
=
"1
92.168.72.140
"
;
ipv4_cucp
=
"1
27.0.0.2
"
;
port_cucp
=
38462
;
ipv4_cuup
=
"1
92.168.72.141
"
;
ipv4_cuup
=
"1
27.0.0.3
"
;
port_cuup
=
38462
;
}
)
...
...
@@ -192,7 +188,10 @@ gNBs =
NETWORK_INTERFACES
:
{
GNB_INTERFACE_NAME_FOR_NG_AMF
=
"demo-oai"
;
GNB_IPV4_ADDRESS_FOR_NG_AMF
=
"192.168.71.140/24"
;
GNB_IPV4_ADDRESS_FOR_NG_AMF
=
"192.168.70.129/24"
;
GNB_INTERFACE_NAME_FOR_NGU
=
"demo-oai"
;
GNB_IPV4_ADDRESS_FOR_NGU
=
"192.168.70.129/24"
;
GNB_PORT_FOR_S1U
=
2152
;
# Spec 2152
};
}
);
...
...
ci-scripts/conf_files/gnb-cuup.sa.f1.conf
View file @
585eb1d3
...
...
@@ -15,14 +15,14 @@ gNBs =
//
Tracking
area
code
,
0
x0000
and
0
xfffe
are
reserved
values
tracking_area_code
=
1
;
plmn_list
= ({
mcc
=
208
;
mnc
=
99
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
,
sd
=
0
xffffff
}) });
plmn_list
= ({
mcc
=
001
;
mnc
=
01
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
;
}) });
tr_s_preference
=
"f1"
;
local_s_if_name
=
"lo"
;
local_s_address
=
"1
92.168.72.141
"
;
remote_s_address
=
"1
92.168.72.142
"
;
local_s_address
=
"1
27.0.0.4
"
;
remote_s_address
=
"1
27.0.0.3
"
;
local_s_portc
=
501
;
local_s_portd
=
2152
;
remote_s_portc
=
500
;
...
...
@@ -39,18 +39,20 @@ gNBs =
E1_INTERFACE
=
(
{
type
=
"up"
;
ipv4_cucp
=
"192.168.72.140"
;
ipv4_cuup
=
"192.168.72.141"
;
type
=
"cp"
;
ipv4_cucp
=
"127.0.0.2"
;
port_cucp
=
38462
;
ipv4_cuup
=
"127.0.0.3"
;
port_cuup
=
38462
;
}
)
NETWORK_INTERFACES
:
{
GNB_INTERFACE_NAME_FOR_NG_AMF
=
"demo-oai"
;
GNB_IPV4_ADDRESS_FOR_NG_AMF
=
"192.168.7
1.141
/24"
;
GNB_IPV4_ADDRESS_FOR_NG_AMF
=
"192.168.7
0.129
/24"
;
GNB_INTERFACE_NAME_FOR_NGU
=
"demo-oai"
;
GNB_IPV4_ADDRESS_FOR_NGU
=
"192.168.7
1.141
/24"
;
GNB_IPV4_ADDRESS_FOR_NGU
=
"192.168.7
0.129
/24"
;
GNB_PORT_FOR_S1U
=
2152
;
# Spec 2152
};
}
...
...
openair2/F1AP/f1ap_cu_ue_context_management.c
View file @
585eb1d3
...
...
@@ -1611,7 +1611,7 @@ int CU_handle_UE_CONTEXT_MODIFICATION_RESPONSE(instance_t instance,
F1AP_ProtocolIE_ID_id_gNB_DU_UE_F1AP_ID
,
true
);
f1ap_ue_context_modification_resp
->
gNB_DU_ue_id
=
ie
->
value
.
choice
.
GNB_DU_UE_F1AP_ID
;
LOG_D
(
F1AP
,
"f1ap_ue_context_
setup
_resp->gNB_DU_ue_id is: %d
\n
"
,
f1ap_ue_context_modification_resp
->
gNB_DU_ue_id
);
LOG_D
(
F1AP
,
"f1ap_ue_context_
modification
_resp->gNB_DU_ue_id is: %d
\n
"
,
f1ap_ue_context_modification_resp
->
gNB_DU_ue_id
);
f1ap_ue_context_modification_resp
->
rnti
=
f1ap_get_rnti_by_du_id
(
CUtype
,
instance
,
f1ap_ue_context_modification_resp
->
gNB_DU_ue_id
);
...
...
openair2/RRC/NR/cucp_cuup_e1ap.c
View file @
585eb1d3
...
...
@@ -36,7 +36,7 @@
extern
RAN_CONTEXT_t
RC
;
static
void
cucp_cuup_bearer_context_setup_e1ap
(
e1ap_bearer_setup_req_t
*
const
req
,
instance_t
instance
)
{
rrc_gNB_ue_context_t
*
ue_context_p
=
rrc_gNB_get_ue_context
(
RC
.
nrrrc
[
instance
],
req
->
rnti
);
rrc_gNB_ue_context_t
*
ue_context_p
=
rrc_gNB_get_ue_context
_by_rnti
(
RC
.
nrrrc
[
instance
],
req
->
rnti
);
protocol_ctxt_t
ctxt
=
{
0
};
PROTOCOL_CTXT_SET_BY_MODULE_ID
(
&
ctxt
,
0
,
GNB_FLAG_YES
,
ue_context_p
->
ue_context
.
rnti
,
0
,
0
,
0
);
...
...
openair2/RRC/NR/nr_rrc_defs.h
View file @
585eb1d3
...
...
@@ -480,8 +480,7 @@ typedef struct gNB_RRC_INST_s {
eth_params_t
eth_params_s
;
rrc_gNB_carrier_data_t
carrier
;
uid_allocator_t
uid_allocator
;
RB_HEAD
(
rrc_nr_ue_tree_s
,
rrc_gNB_ue_context_s
)
rrc_ue_head
;
// ue_context tree key search by rnti
int
Nb_ue
;
RB_HEAD
(
rrc_nr_ue_tree_s
,
rrc_gNB_ue_context_s
)
rrc_ue_head
;
// ue_context tree key search by rnti
/// NR cell id
uint64_t
nr_cellid
;
...
...
openair2/RRC/NR/rrc_gNB.c
View file @
585eb1d3
This diff is collapsed.
Click to expand it.
openair2/RRC/NR/rrc_gNB_GTPV1U.c
View file @
585eb1d3
...
...
@@ -52,7 +52,7 @@ int rrc_gNB_process_GTPV1U_CREATE_TUNNEL_RESP(const protocol_ctxt_t *const ctxt_
}
LOG_D
(
RRC
,
PROTOCOL_RRC_CTXT_UE_FMT
" RX CREATE_TUNNEL_RESP num tunnels %u
\n
"
,
PROTOCOL_RRC_CTXT_UE_ARGS
(
ctxt_pP
),
create_tunnel_resp_pP
->
num_tunnels
);
rrc_gNB_ue_context_t
*
ue_context_p
=
rrc_gNB_get_ue_context
(
RC
.
nrrrc
[
ctxt_pP
->
module_id
],
ctxt_pP
->
rntiMaybeUEid
);
rrc_gNB_ue_context_t
*
ue_context_p
=
rrc_gNB_get_ue_context
_by_rnti
(
RC
.
nrrrc
[
ctxt_pP
->
module_id
],
ctxt_pP
->
rntiMaybeUEid
);
if
(
!
ue_context_p
)
{
LOG_E
(
NR_RRC
,
"UE table error
\n
"
);
return
-
1
;
...
...
openair2/RRC/NR/rrc_gNB_NGAP.c
View file @
585eb1d3
...
...
@@ -279,8 +279,9 @@ static void fill_qos(NGAP_QosFlowSetupRequestList_t *qos, pdusession_t *session)
static
int
decodePDUSessionResourceSetup
(
pdusession_t
*
session
)
{
NGAP_PDUSessionResourceSetupRequestTransfer_t
*
pdusessionTransfer
;
asn_codec_ctx_t
st
=
{.
max_stack_size
=
100
*
1000
};
asn_dec_rval_t
dec_rval
=
aper_decode
(
NULL
,
&
asn_DEF_NGAP_PDUSessionResourceSetupRequestTransfer
,
(
void
**
)
&
pdusessionTransfer
,
session
->
pdusessionTransfer
.
buffer
,
session
->
pdusessionTransfer
.
length
,
0
,
0
);
aper_decode
(
&
st
,
&
asn_DEF_NGAP_PDUSessionResourceSetupRequestTransfer
,
(
void
**
)
&
pdusessionTransfer
,
session
->
pdusessionTransfer
.
buffer
,
session
->
pdusessionTransfer
.
length
,
0
,
0
);
if
(
dec_rval
.
code
!=
RC_OK
)
{
LOG_E
(
NR_RRC
,
"can not decode PDUSessionResourceSetupRequestTransfer
\n
"
);
...
...
openair2/RRC/NR/rrc_gNB_UE_context.c
View file @
585eb1d3
...
...
@@ -123,10 +123,8 @@ void rrc_gNB_remove_ue_context(gNB_RRC_INST *rrc_instance_pP, rrc_gNB_ue_context
}
RB_REMOVE
(
rrc_nr_ue_tree_s
,
&
rrc_instance_pP
->
rrc_ue_head
,
ue_context_pP
);
rrc_gNB_free_mem_ue_context
(
ue_context_pP
);
uid_linear_allocator_free
(
&
rrc_instance_pP
->
uid_allocator
,
ue_context_pP
->
ue_context
.
gNB_ue_ngap_id
);
free
(
ue_context_pP
);
rrc_instance_pP
->
Nb_ue
--
;
rrc_gNB_free_mem_ue_context
(
ue_context_pP
);
LOG_I
(
NR_RRC
,
"Removed UE context
\n
"
);
}
...
...
@@ -158,6 +156,16 @@ rrc_gNB_ue_context_t *rrc_gNB_ue_context_5g_s_tmsi_exist(gNB_RRC_INST *rrc_insta
return
NULL
;
}
void
rrc_gNB_update_ue_context_rnti
(
rnti_t
rnti
,
gNB_RRC_INST
*
rrc_instance_pP
,
uint32_t
gNB_ue_ngap_id
)
{
// rnti will need to be a fast access key, with indexing, today it is sequential search
// This function will update the index when it will be made
rrc_gNB_ue_context_t
*
ue_context_p
=
rrc_gNB_get_ue_context
(
rrc_instance_pP
,
gNB_ue_ngap_id
);
if
(
ue_context_p
)
ue_context_p
->
ue_context
.
rnti
=
rnti
;
else
LOG_E
(
NR_RRC
,
"update rnti on a wrong UE id
\n
"
);
}
//-----------------------------------------------------------------------------
// return a new ue context structure if ue_identityP, rnti not found in collection
rrc_gNB_ue_context_t
*
rrc_gNB_create_ue_context
(
rnti_t
rnti
,
gNB_RRC_INST
*
rrc_instance_pP
,
const
uint64_t
ue_identityP
)
...
...
openair2/RRC/NR/rrc_gNB_UE_context.h
View file @
585eb1d3
...
...
@@ -50,7 +50,7 @@ void rrc_gNB_remove_ue_context(gNB_RRC_INST* rrc_instance_pP, rrc_gNB_ue_context
rrc_gNB_ue_context_t
*
rrc_gNB_ue_context_random_exist
(
gNB_RRC_INST
*
rrc_instance_pP
,
const
uint64_t
ue_identityP
);
rrc_gNB_ue_context_t
*
rrc_gNB_ue_context_5g_s_tmsi_exist
(
gNB_RRC_INST
*
rrc_instance_pP
,
const
uint64_t
s_TMSI
);
void
rrc_gNB_update_ue_context_rnti
(
rnti_t
rnti
,
gNB_RRC_INST
*
rrc_instance_pP
,
uint32_t
gNB_ue_ngap_id
);
rrc_gNB_ue_context_t
*
rrc_gNB_create_ue_context
(
rnti_t
rnti
,
gNB_RRC_INST
*
rrc_instance_pP
,
const
uint64_t
ue_identityP
);
#endif
openair2/RRC/NR/rrc_gNB_nsa.c
View file @
585eb1d3
...
...
@@ -145,7 +145,6 @@ void rrc_add_nsa_user(gNB_RRC_INST *rrc, rrc_gNB_ue_context_t *ue_context_p, x2a
}
// NR RRCReconfiguration
AssertFatal
(
rrc
->
Nb_ue
<
MAX_NR_RRC_UE_CONTEXTS
,
"cannot add another UE
\n
"
);
UE
->
reconfig
=
calloc
(
1
,
sizeof
(
NR_RRCReconfiguration_t
));
UE
->
secondaryCellGroup
=
calloc
(
1
,
sizeof
(
NR_CellGroupConfig_t
));
memset
((
void
*
)
UE
->
reconfig
,
0
,
sizeof
(
NR_RRCReconfiguration_t
));
...
...
@@ -237,8 +236,7 @@ void rrc_add_nsa_user(gNB_RRC_INST *rrc, rrc_gNB_ue_context_t *ue_context_p, x2a
NR_ServingCellConfig_t
*
scc
=
UE
->
spCellConfig
?
UE
->
spCellConfig
->
spCellConfigDedicated
:
NULL
;
fill_default_reconfig
(
carrier
->
servingcellconfigcommon
,
scc
,
reconfig_ies
,
UE
->
secondaryCellGroup
,
UE
->
UE_Capability_nr
,
configuration
,
ue_context_p
->
ue_context
.
gNB_ue_ngap_id
);
ue_context_p
->
ue_context
.
rnti
=
UE
->
secondaryCellGroup
->
spCellConfig
->
reconfigurationWithSync
->
newUE_Identity
;
rrc_gNB_update_ue_context_rnti
(
UE
->
secondaryCellGroup
->
spCellConfig
->
reconfigurationWithSync
->
newUE_Identity
,
rrc
,
UE
->
gNB_ue_ngap_id
);
NR_CG_Config_t
*
CG_Config
=
calloc
(
1
,
sizeof
(
*
CG_Config
));
memset
((
void
*
)
CG_Config
,
0
,
sizeof
(
*
CG_Config
));
// int CG_Config_size = generate_CG_Config(rrc,CG_Config,UE->reconfig,UE->rb_config);
...
...
@@ -328,7 +326,6 @@ void rrc_add_nsa_user(gNB_RRC_INST *rrc, rrc_gNB_ue_context_t *ue_context_p, x2a
itti_send_msg_to_task
(
TASK_X2AP
,
ENB_MODULE_ID_TO_INSTANCE
(
0
),
msg
);
//Check right id instead of hardcoding
}
rrc
->
Nb_ue
++
;
// configure MAC and RLC
if
(
NODE_IS_DU
(
rrc
->
node_type
))
{
rrc_mac_config_req_gNB
(
rrc
->
module_id
,
...
...
@@ -384,7 +381,7 @@ void rrc_remove_nsa_user(gNB_RRC_INST *rrc, int rnti) {
LOG_D
(
RRC
,
"calling rrc_remove_nsa_user rnti %d
\n
"
,
rnti
);
PROTOCOL_CTXT_SET_BY_MODULE_ID
(
&
ctxt
,
rrc
->
module_id
,
GNB_FLAG_YES
,
rnti
,
0
,
0
,
rrc
->
module_id
);
ue_context
=
rrc_gNB_get_ue_context
(
rrc
,
rnti
);
ue_context
=
rrc_gNB_get_ue_context
_by_rnti
(
rrc
,
rnti
);
if
(
ue_context
==
NULL
)
{
LOG_W
(
RRC
,
"rrc_remove_nsa_user: rnti %d not found
\n
"
,
rnti
);
return
;
...
...
openair2/RRC/NR/rrc_gNB_radio_bearers.c
View file @
585eb1d3
...
...
@@ -28,7 +28,6 @@ rrc_pdu_session_param_t *find_pduSession(gNB_RRC_UE_t *ue, int id, bool create)
for
(
j
=
0
;
j
<
ue
->
nb_of_pdusessions
;
j
++
)
if
(
id
==
ue
->
pduSession
[
j
].
param
.
pdusession_id
)
break
;
printf
(
"%d XXXX %d
\n
"
,
j
,
ue
->
nb_of_pdusessions
);
if
(
j
==
ue
->
nb_of_pdusessions
&&
create
)
ue
->
nb_of_pdusessions
++
;
else
...
...
openair3/NGAP/ngap_gNB_handlers.c
View file @
585eb1d3
...
...
@@ -53,8 +53,8 @@ static void allocCopy(ngap_pdu_t *out, OCTET_STRING_t in)
if
(
in
.
size
)
{
out
->
buffer
=
malloc
(
in
.
size
);
memcpy
(
out
->
buffer
,
in
.
buf
,
in
.
size
);
out
->
length
=
in
.
size
;
}
out
->
length
=
in
.
size
;
}
char
*
ngap_direction2String
(
int
ngap_dir
)
{
...
...
openair3/NGAP/ngap_gNB_nas_procedures.c
View file @
585eb1d3
...
...
@@ -54,8 +54,8 @@ static void allocCopy(OCTET_STRING_t *out, ngap_pdu_t in)
if
(
in
.
length
)
{
out
->
buf
=
malloc
(
in
.
length
);
memcpy
(
out
->
buf
,
in
.
buffer
,
in
.
length
);
out
->
size
=
in
.
length
;
}
out
->
size
=
in
.
length
;
}
static
void
allocAddrCopy
(
BIT_STRING_t
*
out
,
ngap_transport_layer_addr_t
in
)
...
...
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