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
lizhongxiao
OpenXG-RAN
Commits
deaa1868
Commit
deaa1868
authored
Oct 12, 2023
by
Deokseong "David" Kim
Committed by
Melissa
Oct 12, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Episys/david/fixing buffer overflow
parent
004c0c8a
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
9 deletions
+11
-9
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
+11
-9
No files found.
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
View file @
deaa1868
...
@@ -1578,16 +1578,17 @@ validate_rx_payload(NR_DL_UE_HARQ_t *harq, int frame_rx, int slot_rx, bool polar
...
@@ -1578,16 +1578,17 @@ validate_rx_payload(NR_DL_UE_HARQ_t *harq, int frame_rx, int slot_rx, bool polar
}
}
void
validate_rx_payload_str
(
NR_DL_UE_HARQ_t
*
harq
,
int
slot
,
bool
polar_decoded
)
{
void
validate_rx_payload_str
(
NR_DL_UE_HARQ_t
*
harq
,
int
slot
,
bool
polar_decoded
)
{
#define MAX_MSG_SIZE 128
#define MAX_MSG_SIZE 1024
#define AVG_MSG_SIZE 32
unsigned
int
errors_bit
=
0
;
unsigned
int
errors_bit
=
0
;
char
estimated_output_bit
[
HNA_SIZE
];
char
estimated_output_bit
[
HNA_SIZE
];
char
test_input_bit
[
HNA_SIZE
];
char
test_input_bit
[
HNA_SIZE
];
unsigned
int
n_false_positive
=
0
;
unsigned
int
n_false_positive
=
0
;
char
default_input
[
MAX_MSG_SIZE
]
=
""
;
char
default_input
[
MAX_MSG_SIZE
]
=
{}
;
char
*
sl_user_msg
=
get_softmodem_params
()
->
sl_user_msg
;
char
*
sl_user_msg
=
get_softmodem_params
()
->
sl_user_msg
;
char
*
test_input
=
(
sl_user_msg
!=
NULL
)
?
sl_user_msg
:
default_input
;
char
*
test_input
=
(
sl_user_msg
!=
NULL
)
?
sl_user_msg
:
default_input
;
uint32_t
default_msg_len
=
(
sl_user_msg
!=
NULL
)
?
strlen
(
sl_user_msg
)
:
MAX_MSG_SIZE
;
uint32_t
default_msg_len
=
(
sl_user_msg
!=
NULL
)
?
strlen
(
sl_user_msg
)
:
MAX_MSG_SIZE
;
uint32_t
test_msg_len
=
min
(
max
(
10
,
strlen
((
char
*
)
harq
->
b
)
),
min
(
default_msg_len
,
harq
->
TBS
));
uint32_t
test_msg_len
=
min
(
strlen
((
char
*
)
harq
->
b
),
min
(
default_msg_len
,
harq
->
TBS
));
static
uint16_t
sum_passed
=
0
;
static
uint16_t
sum_passed
=
0
;
static
uint16_t
sum_failed
=
0
;
static
uint16_t
sum_failed
=
0
;
...
@@ -1606,7 +1607,8 @@ void validate_rx_payload_str(NR_DL_UE_HARQ_t *harq, int slot, bool polar_decoded
...
@@ -1606,7 +1607,8 @@ void validate_rx_payload_str(NR_DL_UE_HARQ_t *harq, int slot, bool polar_decoded
if
(
i
>=
8
*
comparison_end_byte
)
if
(
i
>=
8
*
comparison_end_byte
)
break
;
break
;
if
(
estimated_output_bit
[
i
]
!=
test_input_bit
[
i
])
{
if
(
estimated_output_bit
[
i
]
!=
test_input_bit
[
i
])
{
errors_bit
++
;
if
(
sl_user_msg
!=
NULL
)
errors_bit
++
;
}
}
}
}
...
@@ -1616,12 +1618,12 @@ void validate_rx_payload_str(NR_DL_UE_HARQ_t *harq, int slot, bool polar_decoded
...
@@ -1616,12 +1618,12 @@ void validate_rx_payload_str(NR_DL_UE_HARQ_t *harq, int slot, bool polar_decoded
LOG_D
(
NR_PHY
,
"result[%d]=%c
\n
"
,
i
,
result
[
i
]);
LOG_D
(
NR_PHY
,
"result[%d]=%c
\n
"
,
i
,
result
[
i
]);
}
}
char
*
usr_msg_ptr
=
&
result
[
0
];
char
*
usr_msg_ptr
=
&
result
[
0
];
char
tmp_flag
[
128
]
=
{}
;
char
msg_head_tail
[
128
]
=
"Received your text! It says: "
;
memset
(
tmp_flag
,
'+'
,
strlen
(
"Received your text! It says: "
)
+
test_msg_len
);
memset
(
msg_head_tail
,
'+'
,
min
(
128
,
strlen
(
msg_head_tail
)
+
AVG_MSG_SIZE
)
);
LOG_I
(
NR_PHY
,
"%s
\n
"
,
tmp_flag
);
LOG_I
(
NR_PHY
,
"%s
\n
"
,
msg_head_tail
);
LOG_I
(
NR_PHY
,
"Received your text! It says: %s
\n
"
,
usr_msg_ptr
);
LOG_I
(
NR_PHY
,
"Received your text! It says: %s
\n
"
,
usr_msg_ptr
);
LOG_D
(
NR_PHY
,
"Decoded_payload for slot %d: %s
\n
"
,
slot
,
result
);
LOG_D
(
NR_PHY
,
"Decoded_payload for slot %d: %s
\n
"
,
slot
,
result
);
LOG_I
(
NR_PHY
,
"%s
\n
"
,
tmp_flag
);
LOG_I
(
NR_PHY
,
"%s
\n
"
,
msg_head_tail
);
}
}
if
(
errors_bit
>
0
||
polar_decoded
==
false
)
{
if
(
errors_bit
>
0
||
polar_decoded
==
false
)
{
...
@@ -1629,7 +1631,7 @@ void validate_rx_payload_str(NR_DL_UE_HARQ_t *harq, int slot, bool polar_decoded
...
@@ -1629,7 +1631,7 @@ void validate_rx_payload_str(NR_DL_UE_HARQ_t *harq, int slot, bool polar_decoded
++
sum_failed
;
++
sum_failed
;
LOG_I
(
PHY
,
"errors_bit %u, polar_decoded %d
\n
"
,
errors_bit
,
polar_decoded
);
LOG_I
(
PHY
,
"errors_bit %u, polar_decoded %d
\n
"
,
errors_bit
,
polar_decoded
);
LOG_I
(
PHY
,
"PSSCH test NG with %d / %d = %4.2f
\n
"
,
sum_passed
,
(
sum_passed
+
sum_failed
),
(
float
)
sum_passed
/
(
float
)
(
sum_passed
+
sum_failed
));
LOG_I
(
PHY
,
"PSSCH test NG with %d / %d = %4.2f
\n
"
,
sum_passed
,
(
sum_passed
+
sum_failed
),
(
float
)
sum_passed
/
(
float
)
(
sum_passed
+
sum_failed
));
}
else
{
}
else
if
(
sl_user_msg
!=
NULL
)
{
++
sum_passed
;
++
sum_passed
;
LOG_I
(
PHY
,
"PSSCH test OK with %d / %d = %4.2f
\n
"
,
sum_passed
,
(
sum_passed
+
sum_failed
),
(
float
)
sum_passed
/
(
float
)
(
sum_passed
+
sum_failed
));
LOG_I
(
PHY
,
"PSSCH test OK with %d / %d = %4.2f
\n
"
,
sum_passed
,
(
sum_passed
+
sum_failed
),
(
float
)
sum_passed
/
(
float
)
(
sum_passed
+
sum_failed
));
}
}
...
...
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