Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Xiph.Org
Icecast-Server
Commits
0d7448ef
Commit
0d7448ef
authored
Nov 28, 2015
by
Joseph Wallace
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Change buffer-related sizes & indices to size_t or ssize_t, as applicable.
parent
8a09627d
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
53 additions
and
53 deletions
+53
-53
src/format_ebml.c
src/format_ebml.c
+53
-53
No files found.
src/format_ebml.c
View file @
0d7448ef
...
...
@@ -130,7 +130,7 @@ typedef struct ebml_client_data_st ebml_client_data_t;
struct
ebml_client_data_st
{
refbuf_t
*
header
;
in
t
header_pos
;
size_
t
header_pos
;
};
...
...
@@ -140,19 +140,19 @@ struct ebml_st {
ebml_parsing_state
parse_state
;
unsigned
long
long
copy_len
;
in
t
cluster_start
;
ssize_
t
cluster_start
;
ebml_keyframe_status
cluster_starts_with_keyframe
;
int
flush_cluster
;
in
t
position
;
size_
t
position
;
unsigned
char
*
buffer
;
in
t
input_position
;
size_
t
input_position
;
unsigned
char
*
input_buffer
;
in
t
header_size
;
in
t
header_position
;
in
t
header_read_position
;
size_
t
header_size
;
size_
t
header_position
;
size_
t
header_read_position
;
unsigned
char
*
header
;
unsigned
long
long
keyframe_track_number
;
...
...
@@ -169,21 +169,21 @@ static void ebml_free_client_data(client_t *client);
static
ebml_t
*
ebml_create
();
static
void
ebml_destroy
(
ebml_t
*
ebml
);
static
int
ebml_read_space
(
ebml_t
*
ebml
);
static
int
ebml_read
(
ebml_t
*
ebml
,
char
*
buffer
,
int
len
,
ebml_chunk_type
*
chunk_type
);
static
unsigned
char
*
ebml_get_write_buffer
(
ebml_t
*
ebml
,
int
*
bytes
);
static
int
ebml_wrote
(
ebml_t
*
ebml
,
int
len
);
static
int
ebml_parse_tag
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
unsigned
long
long
*
payload_length
);
static
int
ebml_parse_var_int
(
unsigned
char
*
buffer
,
static
size_t
ebml_read_space
(
ebml_t
*
ebml
);
static
size_t
ebml_read
(
ebml_t
*
ebml
,
char
*
buffer
,
size_t
len
,
ebml_chunk_type
*
chunk_type
);
static
unsigned
char
*
ebml_get_write_buffer
(
ebml_t
*
ebml
,
size_t
*
bytes
);
static
ssize_t
ebml_wrote
(
ebml_t
*
ebml
,
size_t
len
);
static
ssize_t
ebml_parse_tag
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
unsigned
long
long
*
out_value
);
static
int
ebml_parse_sized_int
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
int
len
,
int
is_signed
,
unsigned
long
long
*
out_value
);
unsigned
long
long
*
payload_length
);
static
ssize_t
ebml_parse_var_int
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
unsigned
long
long
*
out_value
);
static
ssize_t
ebml_parse_sized_int
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
size_t
len
,
int
is_signed
,
unsigned
long
long
*
out_value
);
static
inline
void
ebml_check_track
(
ebml_t
*
ebml
);
int
format_ebml_get_plugin
(
source_t
*
source
)
...
...
@@ -229,7 +229,7 @@ static int send_ebml_header(client_t *client)
{
ebml_client_data_t
*
ebml_client_data
=
client
->
format_data
;
in
t
len
=
EBML_SLICE_SIZE
;
size_
t
len
=
EBML_SLICE_SIZE
;
int
ret
;
if
(
ebml_client_data
->
header
->
len
-
ebml_client_data
->
header_pos
<
len
)
...
...
@@ -278,11 +278,11 @@ static refbuf_t *ebml_get_buffer(source_t *source)
ebml_source_state_t
*
ebml_source_state
=
source
->
format
->
_state
;
format_plugin_t
*
format
=
source
->
format
;
unsigned
char
*
write_buffer
=
NULL
;
in
t
read_bytes
=
0
;
in
t
write_bytes
=
0
;
size_
t
read_bytes
=
0
;
size_
t
write_bytes
=
0
;
ebml_chunk_type
chunk_type
;
refbuf_t
*
refbuf
;
in
t
ret
;
size_
t
ret
;
while
(
1
)
{
...
...
@@ -429,10 +429,10 @@ static ebml_t *ebml_create()
/* Return the size of a buffer needed to store the next
* chunk that ebml_read can yield.
*/
static
in
t
ebml_read_space
(
ebml_t
*
ebml
)
static
size_
t
ebml_read_space
(
ebml_t
*
ebml
)
{
in
t
read_space
;
size_
t
read_space
;
switch
(
ebml
->
output_state
)
{
case
EBML_STATE_READING_HEADER
:
...
...
@@ -486,11 +486,11 @@ static int ebml_read_space(ebml_t *ebml)
* chunk_type will be set to indicate if the chunk is the header,
* the start of a cluster, or continuing the current cluster.
*/
static
in
t
ebml_read
(
ebml_t
*
ebml
,
char
*
buffer
,
in
t
len
,
ebml_chunk_type
*
chunk_type
)
static
size_
t
ebml_read
(
ebml_t
*
ebml
,
char
*
buffer
,
size_
t
len
,
ebml_chunk_type
*
chunk_type
)
{
in
t
read_space
;
in
t
to_read
;
size_
t
read_space
;
size_
t
to_read
;
*
chunk_type
=
EBML_CHUNK_HEADER
;
...
...
@@ -584,7 +584,7 @@ static int ebml_read(ebml_t *ebml, char *buffer, int len, ebml_chunk_type *chunk
* Returns the start of the writable space;
* Sets bytes to the amount of space available.
*/
static
unsigned
char
*
ebml_get_write_buffer
(
ebml_t
*
ebml
,
in
t
*
bytes
)
static
unsigned
char
*
ebml_get_write_buffer
(
ebml_t
*
ebml
,
size_
t
*
bytes
)
{
*
bytes
=
EBML_SLICE_SIZE
-
ebml
->
input_position
;
return
ebml
->
input_buffer
+
ebml
->
input_position
;
...
...
@@ -592,16 +592,16 @@ static unsigned char *ebml_get_write_buffer(ebml_t *ebml, int *bytes)
/* Process data that has been written to the EBML parser's input buffer.
*/
static
in
t
ebml_wrote
(
ebml_t
*
ebml
,
in
t
len
)
static
ssize_
t
ebml_wrote
(
ebml_t
*
ebml
,
size_
t
len
)
{
int
processing
=
1
;
in
t
cursor
=
0
;
in
t
to_copy
;
size_
t
cursor
=
0
;
size_
t
to_copy
;
unsigned
char
*
end_of_buffer
;
in
t
tag_length
;
in
t
value_length
;
in
t
track_number_length
;
ssize_
t
tag_length
;
ssize_
t
value_length
;
ssize_
t
track_number_length
;
unsigned
long
long
payload_length
;
unsigned
long
long
data_value
;
unsigned
long
long
track_number
;
...
...
@@ -861,12 +861,12 @@ static inline void ebml_check_track(ebml_t *ebml)
* Returns -1 if the tag is corrupt.
*/
static
in
t
ebml_parse_tag
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
unsigned
long
long
*
payload_length
)
static
ssize_
t
ebml_parse_tag
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
unsigned
long
long
*
payload_length
)
{
in
t
type_length
;
in
t
size_length
;
size_
t
type_length
;
size_
t
size_length
;
unsigned
long
long
value
;
*
payload_length
=
0
;
...
...
@@ -894,12 +894,12 @@ static int ebml_parse_tag(unsigned char *buffer,
* Else, returns the length of the number in bytes and writes the
* value to *out_value.
*/
static
in
t
ebml_parse_var_int
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
unsigned
long
long
*
out_value
)
static
ssize_
t
ebml_parse_var_int
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
unsigned
long
long
*
out_value
)
{
in
t
size
=
1
;
in
t
i
;
size_
t
size
=
1
;
size_
t
i
;
unsigned
char
mask
=
0x80
;
unsigned
long
long
value
;
unsigned
long
long
unknown_marker
;
...
...
@@ -959,14 +959,14 @@ static int ebml_parse_var_int(unsigned char *buffer,
* Else, returns the length of the number in bytes and writes the
* value to *out_value.
*/
static
in
t
ebml_parse_sized_int
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
int
len
,
int
is_signed
,
unsigned
long
long
*
out_value
)
static
ssize_
t
ebml_parse_sized_int
(
unsigned
char
*
buffer
,
unsigned
char
*
buffer_end
,
size_t
len
,
int
is_signed
,
unsigned
long
long
*
out_value
)
{
long
long
value
;
in
t
i
;
size_
t
i
;
if
(
len
<
1
||
len
>
8
)
{
ICECAST_LOG_DEBUG
(
"Sized int of %i bytes"
,
len
);
...
...
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