]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - binutils/sysdump.c
Fix an illegal memory access parsing a corrupt sysroff file.
[thirdparty/binutils-gdb.git] / binutils / sysdump.c
index 35796e829a025b9032440207ca62fa7cd189cbf2..3aa046ffe43b30872766443fdf3aeab479edce53 100644 (file)
@@ -60,6 +60,12 @@ getCHARS (unsigned char *ptr, int *idx, int size, int max)
       (*idx) += 8;
     }
 
+  if (oc + b > size)
+    {
+      /* PR 28564  */
+      return _("*corrupt*");
+    }
+
   *idx += b * 8;
   r = xcalloc (b + 1, 1);
   memcpy (r, ptr + oc, b);