Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
F
Flexric
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
mosaic5g
Flexric
Commits
0c5c342b
Commit
0c5c342b
authored
11 months ago
by
Teodora Vladic
Browse files
Options
Downloads
Patches
Plain Diff
Correctly fill RC SM RAN Function Name
parent
07e8f8f1
No related branches found
Branches containing commit
No related tags found
1 merge request
!44
Correctly fill RC SM RAN Function Name
Pipeline
#43832
passed
11 months ago
Stage: external
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
src/sm/rc_sm/rc_sm_agent.c
+45
-70
45 additions, 70 deletions
src/sm/rc_sm/rc_sm_agent.c
with
45 additions
and
70 deletions
src/sm/rc_sm/rc_sm_agent.c
+
45
−
70
View file @
0c5c342b
...
...
@@ -47,66 +47,6 @@ typedef struct{
}
sm_rc_agent_t
;
/*
static
byte_array_t cp_str_to_ba(const char* str)
{
assert(str != NULL);
const size_t sz = strlen(str);
byte_array_t dst = {.len = sz};
dst.buf = calloc(sz,sizeof(uint8_t));
assert(dst.buf != NULL && "Memory exhausted");
memcpy(dst.buf, str, sz);
return dst;
}
static
ran_function_name_t fill_rc_ran_func_name(void)
{
ran_function_name_t dst = {0};
// RAN Function Short Name
// Mandatory
// PrintableString [1-150]
dst.name = cp_str_to_ba(SM_RAN_CTRL_SHORT_NAME);
// RAN Function Service Model OID
// Mandatory
// PrintableString [1-1000]
//iso(1) identified-organization(3)
//dod(6) internet(1) private(4)
//enterprise(1) 53148 e2(1)
// version1 (1) e2sm(2) e2sm-RC-
// IEs (3)
dst.oid = cp_str_to_ba(SM_RAN_CTRL_OID);
// RAN Function Description
// Mandatory
// PrintableString [1- 150]
//RAN function RC “RAN Control” performs the following
//functionalities:
//- Exposure of RAN control and UE context related
//information.
//- Modification and initiation of RAN control related call
//processes and messages
//- Execution of policies that may result in change of
//RAN control behavior
dst.description = cp_str_to_ba( SM_RAN_CTRL_DESCRIPTION);
// RAN Function Instance
// Optional
// INTEGER
// long* instance; // OPTIONAL: it is suggested to be used when E2 Node declares
// multiple RAN Function ID supporting the same E2SM specification
return dst;
}
static
e2sm_rc_func_def_t fill_rc_ran_func_def(sm_rc_agent_t const* sm)
{
...
...
@@ -219,6 +159,50 @@ sm_ctrl_out_data_t on_control_rc_sm_ag(sm_agent_t const* sm_agent, sm_ctrl_req_d
return
ans
;
}
static
ran_function_name_t
fill_ran_func_name
(
void
)
{
ran_function_name_t
dst
=
{
0
};
// RAN Function Short Name
// Mandatory
// PrintableString [1-150]
dst
.
name
=
cp_str_to_ba
(
SM_RAN_CTRL_SHORT_NAME
);
// RAN Function Service Model OID
// Mandatory
// PrintableString [1-1000]
//iso(1) identified-organization(3)
//dod(6) internet(1) private(4)
//enterprise(1) 53148 e2(1)
// version1 (1) e2sm(2) e2sm-RC-
// IEs (3)
dst
.
oid
=
cp_str_to_ba
(
SM_RAN_CTRL_OID
);
// RAN Function Description
// Mandatory
// PrintableString [1- 150]
//RAN function RC “RAN Control” performs the following
//functionalities:
//- Exposure of RAN control and UE context related
//information.
//- Modification and initiation of RAN control related call
//processes and messages
//- Execution of policies that may result in change of
//RAN control behavior
dst
.
description
=
cp_str_to_ba
(
SM_RAN_CTRL_DESCRIPTION
);
// RAN Function Instance
// Optional
// INTEGER
// long* instance; // OPTIONAL: it is suggested to be used when E2 Node declares
// multiple RAN Function ID supporting the same E2SM specification
return
dst
;
}
static
sm_e2_setup_data_t
on_e2_setup_rc_sm_ag
(
sm_agent_t
const
*
sm_agent
)
{
...
...
@@ -233,6 +217,7 @@ sm_e2_setup_data_t on_e2_setup_rc_sm_ag(sm_agent_t const* sm_agent)
rc_e2_setup_t
rc
=
{
0
};
// Will call the function read_rc_setup_sm
sm
->
base
.
io
.
read_setup
(
&
rc
);
rc
.
ran_func_def
.
name
=
fill_ran_func_name
();
e2sm_rc_func_def_t
*
ran_func
=
&
rc
.
ran_func_def
;
defer
({
free_e2sm_rc_func_def
(
ran_func
);
});
...
...
@@ -242,17 +227,7 @@ sm_e2_setup_data_t on_e2_setup_rc_sm_ag(sm_agent_t const* sm_agent)
sm_e2_setup_data_t
setup
=
{
0
};
setup
.
len_rfd
=
ba
.
len
;
setup
.
ran_fun_def
=
ba
.
buf
;
/*
// RAN Function
setup.rf.def = cp_str_to_ba(SM_RAN_CTRL_SHORT_NAME);
setup.rf.id = SM_RC_ID;
setup.rf.rev = SM_RC_REV;
setup.rf.oid = calloc(1, sizeof(byte_array_t) );
assert(setup.rf.oid != NULL && "Memory exhausted");
*setup.rf.oid = cp_str_to_ba(SM_RAN_CTRL_OID);
*/
return
setup
;
}
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment