mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
ffserver: fix incorrect strlcpy usage
Somewhat ironic that this "safe" interface is actually being used unsafely here. This fixes the usage preventing potential null pointer dereference, where the old code was doubly broken: ctime can return NULL, and ctime can return an arbitrarily long buffer. Reviewed-by: Mark Harris <mark.hsj@gmail.com> Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
This commit is contained in:
parent
cf491a925e
commit
6c2dbff7f0
@ -305,15 +305,19 @@ static void ffm_set_write_index(AVFormatContext *s, int64_t pos,
|
||||
ffm->file_size = file_size;
|
||||
}
|
||||
|
||||
static char *ctime1(char *buf2, int buf_size)
|
||||
static char *ctime1(char *buf2, size_t buf_size)
|
||||
{
|
||||
time_t ti;
|
||||
char *p;
|
||||
|
||||
ti = time(NULL);
|
||||
p = ctime(&ti);
|
||||
if (!p || !*p) {
|
||||
*buf2 = '\0';
|
||||
return buf2;
|
||||
}
|
||||
av_strlcpy(buf2, p, buf_size);
|
||||
p = buf2 + strlen(p) - 1;
|
||||
p = buf2 + strlen(buf2) - 1;
|
||||
if (*p == '\n')
|
||||
*p = '\0';
|
||||
return buf2;
|
||||
|
Loading…
Reference in New Issue
Block a user