Commit 1a5e4fd8 authored by Alex Converse's avatar Alex Converse Committed by Alex Converse

Replace strncpy() with av_strlcpy().

parent aab6374b
...@@ -3695,8 +3695,7 @@ static int opt_streamid(const char *opt, const char *arg) ...@@ -3695,8 +3695,7 @@ static int opt_streamid(const char *opt, const char *arg)
char *p; char *p;
char idx_str[16]; char idx_str[16];
strncpy(idx_str, arg, sizeof(idx_str)); av_strlcpy(idx_str, arg, sizeof(idx_str));
idx_str[sizeof(idx_str)-1] = '\0';
p = strchr(idx_str, ':'); p = strchr(idx_str, ':');
if (!p) { if (!p) {
fprintf(stderr, fprintf(stderr,
......
...@@ -33,6 +33,7 @@ ...@@ -33,6 +33,7 @@
#include "libavutil/audioconvert.h" #include "libavutil/audioconvert.h"
#include "libavutil/avassert.h" #include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/crc.h" #include "libavutil/crc.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
#include "avcodec.h" #include "avcodec.h"
...@@ -1578,10 +1579,10 @@ static void dprint_options(AVCodecContext *avctx) ...@@ -1578,10 +1579,10 @@ static void dprint_options(AVCodecContext *avctx)
char strbuf[32]; char strbuf[32];
switch (s->bitstream_id) { switch (s->bitstream_id) {
case 6: strncpy(strbuf, "AC-3 (alt syntax)", 32); break; case 6: av_strlcpy(strbuf, "AC-3 (alt syntax)", 32); break;
case 8: strncpy(strbuf, "AC-3 (standard)", 32); break; case 8: av_strlcpy(strbuf, "AC-3 (standard)", 32); break;
case 9: strncpy(strbuf, "AC-3 (dnet half-rate)", 32); break; case 9: av_strlcpy(strbuf, "AC-3 (dnet half-rate)", 32); break;
case 10: strncpy(strbuf, "AC-3 (dnet quater-rate", 32); break; case 10: av_strlcpy(strbuf, "AC-3 (dnet quater-rate", 32); break;
default: snprintf(strbuf, 32, "ERROR"); default: snprintf(strbuf, 32, "ERROR");
} }
av_dlog(avctx, "bitstream_id: %s (%d)\n", strbuf, s->bitstream_id); av_dlog(avctx, "bitstream_id: %s (%d)\n", strbuf, s->bitstream_id);
...@@ -1608,9 +1609,9 @@ static void dprint_options(AVCodecContext *avctx) ...@@ -1608,9 +1609,9 @@ static void dprint_options(AVCodecContext *avctx)
if (opt->audio_production_info) { if (opt->audio_production_info) {
av_dlog(avctx, "mixing_level: %ddB\n", opt->mixing_level); av_dlog(avctx, "mixing_level: %ddB\n", opt->mixing_level);
switch (opt->room_type) { switch (opt->room_type) {
case 0: strncpy(strbuf, "notindicated", 32); break; case 0: av_strlcpy(strbuf, "notindicated", 32); break;
case 1: strncpy(strbuf, "large", 32); break; case 1: av_strlcpy(strbuf, "large", 32); break;
case 2: strncpy(strbuf, "small", 32); break; case 2: av_strlcpy(strbuf, "small", 32); break;
default: snprintf(strbuf, 32, "ERROR (%d)", opt->room_type); default: snprintf(strbuf, 32, "ERROR (%d)", opt->room_type);
} }
av_dlog(avctx, "room_type: %s\n", strbuf); av_dlog(avctx, "room_type: %s\n", strbuf);
...@@ -1622,9 +1623,9 @@ static void dprint_options(AVCodecContext *avctx) ...@@ -1622,9 +1623,9 @@ static void dprint_options(AVCodecContext *avctx)
av_dlog(avctx, "dialnorm: %ddB\n", opt->dialogue_level); av_dlog(avctx, "dialnorm: %ddB\n", opt->dialogue_level);
if (s->channel_mode == AC3_CHMODE_STEREO) { if (s->channel_mode == AC3_CHMODE_STEREO) {
switch (opt->dolby_surround_mode) { switch (opt->dolby_surround_mode) {
case 0: strncpy(strbuf, "notindicated", 32); break; case 0: av_strlcpy(strbuf, "notindicated", 32); break;
case 1: strncpy(strbuf, "on", 32); break; case 1: av_strlcpy(strbuf, "on", 32); break;
case 2: strncpy(strbuf, "off", 32); break; case 2: av_strlcpy(strbuf, "off", 32); break;
default: snprintf(strbuf, 32, "ERROR (%d)", opt->dolby_surround_mode); default: snprintf(strbuf, 32, "ERROR (%d)", opt->dolby_surround_mode);
} }
av_dlog(avctx, "dsur_mode: %s\n", strbuf); av_dlog(avctx, "dsur_mode: %s\n", strbuf);
...@@ -1636,9 +1637,9 @@ static void dprint_options(AVCodecContext *avctx) ...@@ -1636,9 +1637,9 @@ static void dprint_options(AVCodecContext *avctx)
if (s->bitstream_id == 6) { if (s->bitstream_id == 6) {
if (opt->extended_bsi_1) { if (opt->extended_bsi_1) {
switch (opt->preferred_stereo_downmix) { switch (opt->preferred_stereo_downmix) {
case 0: strncpy(strbuf, "notindicated", 32); break; case 0: av_strlcpy(strbuf, "notindicated", 32); break;
case 1: strncpy(strbuf, "ltrt", 32); break; case 1: av_strlcpy(strbuf, "ltrt", 32); break;
case 2: strncpy(strbuf, "loro", 32); break; case 2: av_strlcpy(strbuf, "loro", 32); break;
default: snprintf(strbuf, 32, "ERROR (%d)", opt->preferred_stereo_downmix); default: snprintf(strbuf, 32, "ERROR (%d)", opt->preferred_stereo_downmix);
} }
av_dlog(avctx, "dmix_mode: %s\n", strbuf); av_dlog(avctx, "dmix_mode: %s\n", strbuf);
...@@ -1655,23 +1656,23 @@ static void dprint_options(AVCodecContext *avctx) ...@@ -1655,23 +1656,23 @@ static void dprint_options(AVCodecContext *avctx)
} }
if (opt->extended_bsi_2) { if (opt->extended_bsi_2) {
switch (opt->dolby_surround_ex_mode) { switch (opt->dolby_surround_ex_mode) {
case 0: strncpy(strbuf, "notindicated", 32); break; case 0: av_strlcpy(strbuf, "notindicated", 32); break;
case 1: strncpy(strbuf, "on", 32); break; case 1: av_strlcpy(strbuf, "on", 32); break;
case 2: strncpy(strbuf, "off", 32); break; case 2: av_strlcpy(strbuf, "off", 32); break;
default: snprintf(strbuf, 32, "ERROR (%d)", opt->dolby_surround_ex_mode); default: snprintf(strbuf, 32, "ERROR (%d)", opt->dolby_surround_ex_mode);
} }
av_dlog(avctx, "dsurex_mode: %s\n", strbuf); av_dlog(avctx, "dsurex_mode: %s\n", strbuf);
switch (opt->dolby_headphone_mode) { switch (opt->dolby_headphone_mode) {
case 0: strncpy(strbuf, "notindicated", 32); break; case 0: av_strlcpy(strbuf, "notindicated", 32); break;
case 1: strncpy(strbuf, "on", 32); break; case 1: av_strlcpy(strbuf, "on", 32); break;
case 2: strncpy(strbuf, "off", 32); break; case 2: av_strlcpy(strbuf, "off", 32); break;
default: snprintf(strbuf, 32, "ERROR (%d)", opt->dolby_headphone_mode); default: snprintf(strbuf, 32, "ERROR (%d)", opt->dolby_headphone_mode);
} }
av_dlog(avctx, "dheadphone_mode: %s\n", strbuf); av_dlog(avctx, "dheadphone_mode: %s\n", strbuf);
switch (opt->ad_converter_type) { switch (opt->ad_converter_type) {
case 0: strncpy(strbuf, "standard", 32); break; case 0: av_strlcpy(strbuf, "standard", 32); break;
case 1: strncpy(strbuf, "hdcd", 32); break; case 1: av_strlcpy(strbuf, "hdcd", 32); break;
default: snprintf(strbuf, 32, "ERROR (%d)", opt->ad_converter_type); default: snprintf(strbuf, 32, "ERROR (%d)", opt->ad_converter_type);
} }
av_dlog(avctx, "ad_conv_type: %s\n", strbuf); av_dlog(avctx, "ad_conv_type: %s\n", strbuf);
......
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
#include "avcodec.h" #include "avcodec.h"
#include "ass.h" #include "ass.h"
#include "libavutil/avstring.h"
/** /**
* Generate a suitable AVCodecContext.subtitle_header for SUBTITLE_ASS. * Generate a suitable AVCodecContext.subtitle_header for SUBTITLE_ASS.
...@@ -117,8 +118,7 @@ int ff_ass_add_rect(AVSubtitle *sub, const char *dialog, ...@@ -117,8 +118,7 @@ int ff_ass_add_rect(AVSubtitle *sub, const char *dialog,
rects[sub->num_rects]->type = SUBTITLE_ASS; rects[sub->num_rects]->type = SUBTITLE_ASS;
rects[sub->num_rects]->ass = av_malloc(len + dlen + 1); rects[sub->num_rects]->ass = av_malloc(len + dlen + 1);
strcpy (rects[sub->num_rects]->ass , header); strcpy (rects[sub->num_rects]->ass , header);
strncpy(rects[sub->num_rects]->ass + len, dialog, dlen); av_strlcpy(rects[sub->num_rects]->ass + len, dialog, dlen + 1);
rects[sub->num_rects]->ass[len+dlen] = 0;
sub->num_rects++; sub->num_rects++;
return dlen; return dlen;
} }
...@@ -827,7 +827,7 @@ static int mov_write_video_tag(AVIOContext *pb, MOVTrack *track) ...@@ -827,7 +827,7 @@ static int mov_write_video_tag(AVIOContext *pb, MOVTrack *track)
memset(compressor_name,0,32); memset(compressor_name,0,32);
/* FIXME not sure, ISO 14496-1 draft where it shall be set to 0 */ /* FIXME not sure, ISO 14496-1 draft where it shall be set to 0 */
if (track->mode == MODE_MOV && track->enc->codec && track->enc->codec->name) if (track->mode == MODE_MOV && track->enc->codec && track->enc->codec->name)
strncpy(compressor_name,track->enc->codec->name,31); av_strlcpy(compressor_name,track->enc->codec->name,32);
avio_w8(pb, strlen(compressor_name)); avio_w8(pb, strlen(compressor_name));
avio_write(pb, compressor_name, 31); avio_write(pb, compressor_name, 31);
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
#include "id3v1.h" #include "id3v1.h"
#include "id3v2.h" #include "id3v2.h"
#include "rawenc.h" #include "rawenc.h"
#include "libavutil/avstring.h"
#include "libavutil/intreadwrite.h" #include "libavutil/intreadwrite.h"
#include "libavutil/opt.h" #include "libavutil/opt.h"
...@@ -32,7 +33,7 @@ static int id3v1_set_string(AVFormatContext *s, const char *key, ...@@ -32,7 +33,7 @@ static int id3v1_set_string(AVFormatContext *s, const char *key,
{ {
AVMetadataTag *tag; AVMetadataTag *tag;
if ((tag = av_metadata_get(s->metadata, key, NULL, 0))) if ((tag = av_metadata_get(s->metadata, key, NULL, 0)))
strncpy(buf, tag->value, buf_size); av_strlcpy(buf, tag->value, buf_size);
return !!tag; return !!tag;
} }
......
...@@ -26,6 +26,7 @@ ...@@ -26,6 +26,7 @@
#include <unistd.h> #include <unistd.h>
#include <stdlib.h> #include <stdlib.h>
#include "avstring.h"
#include "avutil.h" #include "avutil.h"
#include "log.h" #include "log.h"
...@@ -120,7 +121,7 @@ void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl) ...@@ -120,7 +121,7 @@ void av_log_default_callback(void* ptr, int level, const char* fmt, va_list vl)
count=0; count=0;
} }
colored_fputs(av_clip(level>>3, 0, 6), line); colored_fputs(av_clip(level>>3, 0, 6), line);
strncpy(prev, line, sizeof line); av_strlcpy(prev, line, sizeof line);
} }
static void (*av_log_callback)(void*, int, const char*, va_list) = av_log_default_callback; static void (*av_log_callback)(void*, int, const char*, va_list) = av_log_default_callback;
......
...@@ -86,6 +86,7 @@ try to unroll inner for(x=0 ... loop to avoid these damn if(x ... checks ...@@ -86,6 +86,7 @@ try to unroll inner for(x=0 ... loop to avoid these damn if(x ... checks
//#define DEBUG_BRIGHTNESS //#define DEBUG_BRIGHTNESS
#include "postprocess.h" #include "postprocess.h"
#include "postprocess_internal.h" #include "postprocess_internal.h"
#include "libavutil/avstring.h"
unsigned postproc_version(void) unsigned postproc_version(void)
{ {
...@@ -762,7 +763,7 @@ pp_mode *pp_get_mode_by_name_and_quality(const char *name, int quality) ...@@ -762,7 +763,7 @@ pp_mode *pp_get_mode_by_name_and_quality(const char *name, int quality)
ppMode->maxClippedThreshold= 0.01; ppMode->maxClippedThreshold= 0.01;
ppMode->error=0; ppMode->error=0;
strncpy(temp, name, GET_MODE_BUFFER_SIZE); av_strlcpy(temp, name, GET_MODE_BUFFER_SIZE);
av_log(NULL, AV_LOG_DEBUG, "pp: %s\n", name); av_log(NULL, AV_LOG_DEBUG, "pp: %s\n", name);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment