[alsa-devel] [PATCH] sound: using strlcpy instead of strncpy
Takashi Iwai
tiwai at suse.de
Thu Jun 20 13:15:37 CEST 2013
At Thu, 20 Jun 2013 19:03:55 +0800,
Zhao Hongjiang wrote:
>
> for NUL terminated string, need alway set '\0' in the end.
>
> Signed-off-by: Zhao Hongjiang <zhaohongjiang at huawei.com>
> ---
> sound/oss/soundcard.c | 2 +-
> sound/soc/codecs/88pm860x-codec.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/sound/oss/soundcard.c b/sound/oss/soundcard.c
> index e778034..53ac987 100644
> --- a/sound/oss/soundcard.c
> +++ b/sound/oss/soundcard.c
> @@ -99,7 +99,7 @@ int *load_mixer_volumes(char *name, int *levels, int present)
> }
> n = num_mixer_volumes++;
>
> - strncpy(mixer_vols[n].name, name, 32);
> + strlcpy(mixer_vols[n].name, name, sizeof(mixer_vols[n].name));
This chunk is a wrong fix. The field doesn't have to be
NUL-terminated if it's the max length.
thanks,
Takashi
>
> if (present)
> mixer_vols[n].num = n;
> diff --git a/sound/soc/codecs/88pm860x-codec.c b/sound/soc/codecs/88pm860x-codec.c
> index 60159c0..6b2e6b3 100644
> --- a/sound/soc/codecs/88pm860x-codec.c
> +++ b/sound/soc/codecs/88pm860x-codec.c
> @@ -1447,7 +1447,7 @@ static int pm860x_codec_probe(struct platform_device *pdev)
> goto out;
> }
> pm860x->irq[i] = res->start + chip->irq_base;
> - strncpy(pm860x->name[i], res->name, MAX_NAME_LEN);
> + strlcpy(pm860x->name[i], res->name, sizeof(pm860x->name[i]));
> }
>
> ret = snd_soc_register_codec(&pdev->dev, &soc_codec_dev_pm860x,
> --
> 1.7.1
>
More information about the Alsa-devel
mailing list