Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
libdvbpsi
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
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
videolan
libdvbpsi
Commits
00500273
Commit
00500273
authored
May 10, 2016
by
Jean-Paul Saman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
SIS: checking boundary (CID #138525, #138526)
parent
ae0f924e
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
3 deletions
+5
-3
src/tables/sis.c
src/tables/sis.c
+5
-3
No files found.
src/tables/sis.c
View file @
00500273
...
@@ -466,10 +466,12 @@ static dvbpsi_sis_cmd_splice_insert_t *
...
@@ -466,10 +466,12 @@ static dvbpsi_sis_cmd_splice_insert_t *
pos
++
;
pos
++
;
p_cmd
->
i_splice_time
.
p_next
=
NULL
;
p_cmd
->
i_splice_time
.
p_next
=
NULL
;
}
}
if
(
!
p_cmd
->
b_program_splice_flag
)
{
if
(
!
p_cmd
->
b_program_splice_flag
)
{
if
(
p_data
[
pos
]
*
2
+
pos
>
i_length
-
pos
)
goto
error
;
p_cmd
->
i_component_count
=
p_data
[
pos
];
p_cmd
->
i_component_count
=
p_data
[
pos
];
if
(
p_cmd
->
i_component_count
*
2
+
pos
>
i_length
-
pos
)
p_cmd
->
i_component_count
=
i_length
-
pos
;
i_needed
+=
(
!
p_cmd
->
b_splice_immediate_flag
)
?
i_needed
+=
(
!
p_cmd
->
b_splice_immediate_flag
)
?
(
p_cmd
->
i_component_count
*
(
5
+
1
)
)
:
(
p_cmd
->
i_component_count
*
(
5
+
1
)
)
:
...
@@ -673,7 +675,7 @@ void dvbpsi_sis_sections_decode(dvbpsi_t* p_dvbpsi, dvbpsi_sis_t* p_sis,
...
@@ -673,7 +675,7 @@ void dvbpsi_sis_sections_decode(dvbpsi_t* p_dvbpsi, dvbpsi_sis_t* p_sis,
while
(
p_section
)
while
(
p_section
)
{
{
for
(
p_byte
=
p_section
->
p_payload_start
+
3
;
for
(
p_byte
=
p_section
->
p_payload_start
+
3
;
p_byte
<
p_section
->
p_payload_end
;
)
p_byte
+
14
<
p_section
->
p_payload_end
;
)
{
{
p_sis
->
i_protocol_version
=
p_byte
[
3
];
p_sis
->
i_protocol_version
=
p_byte
[
3
];
p_sis
->
b_encrypted_packet
=
((
p_byte
[
4
]
&
0x80
)
==
0x80
);
p_sis
->
b_encrypted_packet
=
((
p_byte
[
4
]
&
0x80
)
==
0x80
);
...
...
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