diff options
Diffstat (limited to 'bfd/mach-o.c')
-rw-r--r-- | bfd/mach-o.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/bfd/mach-o.c b/bfd/mach-o.c index 9ae1bba..e0a6fa4 100644 --- a/bfd/mach-o.c +++ b/bfd/mach-o.c @@ -2098,6 +2098,11 @@ bfd_mach_o_archive_p (bfd *abfd) adata->nfat_arch = bfd_getb32 (buf + 4); if (adata->magic != 0xcafebabe) goto error; + /* Avoid matching Java bytecode files, which have the same magic number. + In the Java bytecode file format this field contains the JVM version, + which starts at 43.0. */ + if (adata->nfat_arch > 30) + goto error; adata->archentries = bfd_alloc (abfd, adata->nfat_arch * sizeof (mach_o_fat_archentry)); |