[MPlayer-cvslog] r22420 - trunk/stream/stream_dvb.c
nicodvb
subversion at mplayerhq.hu
Sat Mar 3 14:10:31 CET 2007
Author: nicodvb
Date: Sat Mar 3 14:10:31 2007
New Revision: 22420
Modified:
trunk/stream/stream_dvb.c
Log:
replaced 2 instances of sprintf() with snprintf() and one instance
of strncpy() followed by string termination with strlcpy();
patch by njkain gmail com. This patch is intended to render code
easier to audit against buffer oveflows
Modified: trunk/stream/stream_dvb.c
==============================================================================
--- trunk/stream/stream_dvb.c (original)
+++ trunk/stream/stream_dvb.c Sat Mar 3 14:10:31 2007
@@ -176,8 +176,7 @@ static dvb_channels_list *dvb_get_channe
ptr->name = (char*) malloc(k+1);
if(! ptr->name)
continue;
- strncpy(ptr->name, line, k);
- ptr->name[k] = 0;
+ strlcpy(ptr->name, line, k+1);
}
else
continue;
@@ -764,7 +763,7 @@ dvb_config_t *dvb_get_config(void)
conf->cards = NULL;
for(i=0; i<MAX_CARDS; i++)
{
- sprintf(filename, "/dev/dvb/adapter%d/frontend0", i);
+ snprintf(filename, sizeof(filename), "/dev/dvb/adapter%d/frontend0", i);
fd = open(filename, O_RDONLY|O_NONBLOCK);
if(fd < 0)
{
@@ -824,7 +823,7 @@ dvb_config_t *dvb_get_config(void)
conf->cards[conf->count].devno = i;
conf->cards[conf->count].list = list;
conf->cards[conf->count].type = type;
- sprintf(name, "DVB-%c card n. %d", type==TUNER_TER ? 'T' : (type==TUNER_CBL ? 'C' : 'S'), conf->count+1);
+ snprintf(name, 20, "DVB-%c card n. %d", type==TUNER_TER ? 'T' : (type==TUNER_CBL ? 'C' : 'S'), conf->count+1);
conf->cards[conf->count].name = name;
conf->count++;
}
More information about the MPlayer-cvslog
mailing list