This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH v2] gas/config/tc-score7.c: Use strcpy() instead of sprintf()
- From: Chen Gang <gang dot chen dot 5i5j at gmail dot com>
- To: Andreas Schwab <schwab at linux-m68k dot org>, amodra at gmail dot com, matthew dot fortune at imgtec dot com, nickc at redhat dot com, Pedro Alves <palves at redhat dot com>
- Cc: binutils at sourceware dot org
- Date: Wed, 11 Jun 2014 10:41:00 +0800
- Subject: Re: [PATCH v2] gas/config/tc-score7.c: Use strcpy() instead of sprintf()
- Authentication-results: sourceware.org; auth=none
- References: <5390D761 dot 6090906 at gmail dot com>
Hello maintainers:
Is this patch OK, please help check it when you have free time, thanks.
Originally, I could not find the related Changelog for 'gas', so I did
not mark change log for it.
Thanks.
On 06/06/2014 04:47 AM, Chen Gang wrote:
> For several simple string copy operation, strcpy() is better than
> sprintf(), so instead of.
>
> Also can avoid one warning (cross compiler score-elf):
>
> In file included from ../../binutils-gdb/gas/config/tc-score.c:25:0:
> ../../binutils-gdb/gas/config/tc-score7.c: In function ‘s7_parse_pce_inst’:
> ../../binutils-gdb/gas/config/tc-score7.c:5340:7: warning: format not a string literal and no format arguments [-Wformat-security]
>
>
> Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com>
> ---
> gas/config/tc-score7.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/gas/config/tc-score7.c b/gas/config/tc-score7.c
> index 0a0db2d..4719680 100644
> --- a/gas/config/tc-score7.c
> +++ b/gas/config/tc-score7.c
> @@ -2795,7 +2795,7 @@ s7_parse_16_32_inst (char *insnstr, bfd_boolean gen_frag_p)
> *p = c;
>
> memset (&s7_inst, '\0', sizeof (s7_inst));
> - sprintf (s7_inst.str, "%s", insnstr);
> + strcpy (s7_inst.str, insnstr);
> if (opcode)
> {
> s7_inst.instruction = opcode->value;
> @@ -2804,7 +2804,7 @@ s7_parse_16_32_inst (char *insnstr, bfd_boolean gen_frag_p)
> s7_inst.size = s7_GET_INSN_SIZE (s7_inst.type);
> s7_inst.relax_size = 0;
> s7_inst.bwarn = 0;
> - sprintf (s7_inst.name, "%s", opcode->template_name);
> + strcpy (s7_inst.name, opcode->template_name);
> strcpy (s7_inst.reg, "");
> s7_inst.error = NULL;
> s7_inst.reloc.type = BFD_RELOC_NONE;
> @@ -5308,12 +5308,12 @@ s7_parse_pce_inst (char *insnstr)
> p = strstr (insnstr, "||");
> c = *p;
> *p = '\0';
> - sprintf (first, "%s", insnstr);
> + strcpy (first, insnstr);
>
> /* Get second part string of PCE. */
> *p = c;
> p += 2;
> - sprintf (second, "%s", p);
> + strcpy (second, p);
>
> s7_parse_16_32_inst (first, FALSE);
> if (s7_inst.error)
> @@ -5337,7 +5337,7 @@ s7_parse_pce_inst (char *insnstr)
> || ((pec_part_1.size == s7_INSN16_SIZE) && (s7_inst.size == s7_INSN_SIZE)))
> {
> s7_inst.error = _("pce instruction error (16 bit || 16 bit)'");
> - sprintf (s7_inst.str, insnstr);
> + strcpy (s7_inst.str, insnstr);
> return;
> }
>
>
--
Chen Gang
Open, share, and attitude like air, water, and life which God blessed