Fix uninitialised memory acccess in COFF bfd backend
authorChristophe Guillon <christophe.guillon@st.com>
Tue, 15 May 2018 12:27:45 +0000 (12:27 +0000)
committerChristophe Lyon <christophe.lyon@linaro.org>
Tue, 15 May 2018 12:33:42 +0000 (12:33 +0000)
2018-05-15  Christophe Guillon  <christophe.guillon@st.com>

* coffcode.h (coff_bigobj_swap_aux_in): Make sure that all fields
of the aux structure are initialised.

Change-Id: I81be255ac6611afbe00995fac550e98e6a07e5df

bfd/ChangeLog
bfd/coffcode.h

index 6e97ff260f2c0234e886f7d00748faf909f59b84..655c0ada4218302e510a4d6444439a0101340373 100644 (file)
@@ -1,3 +1,8 @@
+2018-05-15  Christophe Guillon  <christophe.guillon@st.com>
+
+       * coffcode.h (coff_bigobj_swap_aux_in): Make sure that all fields
+       of the aux structure are initialised.
+
 2018-05-15  Francois H. Theron  <francois.theron@netronome.com>
 
        * targets.c: Wrap nfp_elf64_vec in BFD64 ifdef.
index c63ebd2dbb8b726a2f96f8522a05a0a80d60a03e..6ad991cf9d24773e60021faa77da582fa9be23a7 100644 (file)
@@ -5528,6 +5528,9 @@ coff_bigobj_swap_aux_in (bfd *abfd,
   AUXENT_BIGOBJ *ext = (AUXENT_BIGOBJ *) ext1;
   union internal_auxent *in = (union internal_auxent *) in1;
 
+  /* Make sure that all fields in the aux structure are
+     initialised.  */
+  memset (in, 0, sizeof * in);
   switch (in_class)
     {
     case C_FILE: