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


git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@22420 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
nicodvb 2007-03-03 13:10:31 +00:00
parent cb9cde3f8c
commit bcafc11cc0
1 changed files with 3 additions and 4 deletions

View File

@ -176,8 +176,7 @@ static dvb_channels_list *dvb_get_channels(char *filename, int type)
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++;
}