Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [RFC] Fix compiler warnings in osabi.c
@ 2006-01-10 22:22 Mark Kettenis
  2006-01-11  4:19 ` Daniel Jacobowitz
  2006-01-11  4:22 ` Eli Zaretskii
  0 siblings, 2 replies; 6+ messages in thread
From: Mark Kettenis @ 2006-01-10 22:22 UTC (permalink / raw)
  To: gdb-patches

Another GCC 4 warning; e_ident[] is an array of unsigned chars.  I
think the most elegant way to solve this is to use memcmp instead of
strcmp, since we're comparing a string to what may be random garbage,
and not two strings.

This one isn't quite so obvious, but if nobody objects, I'll commit
this after a week.

Mark


Index: ChangeLog
from  Mark Kettenis  <kettenis@gnu.org>

	* osabi.c (generic_elf_osabi_sniffer): Use memcmp instead of
	strcmp to compare string to an arbitrary buffer.

Index: osabi.c
===================================================================
RCS file: /cvs/src/src/gdb/osabi.c,v
retrieving revision 1.34
diff -u -p -r1.34 osabi.c
--- osabi.c 17 Dec 2005 22:34:01 -0000 1.34
+++ osabi.c 10 Jan 2006 22:18:43 -0000
@@ -546,7 +546,7 @@ generic_elf_osabi_sniffer (bfd *abfd)
       /* The FreeBSD folks have been naughty; they stored the string
          "FreeBSD" in the padding of the e_ident field of the ELF
          header to "brand" their ELF binaries in FreeBSD 3.x.  */
-      if (strcmp (&elf_elfheader (abfd)->e_ident[8], "FreeBSD") == 0)
+      if (memcmp (&elf_elfheader (abfd)->e_ident[8], "FreeBSD", 8) == 0)
 	osabi = GDB_OSABI_FREEBSD_ELF;
     }
 


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2006-01-15 22:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-01-10 22:22 [RFC] Fix compiler warnings in osabi.c Mark Kettenis
2006-01-11  4:19 ` Daniel Jacobowitz
2006-01-11  4:22 ` Eli Zaretskii
2006-01-15 20:23   ` Mark Kettenis
2006-01-15 21:38     ` Eli Zaretskii
2006-01-15 22:28       ` Mark Kettenis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox