Hello community,

here is the log from the commit of package file for openSUSE:Factory checked in 
at 2014-06-26 15:07:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/file (Old)
 and      /work/SRC/openSUSE:Factory/.file.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "file"

Changes:
--------
--- /work/SRC/openSUSE:Factory/file/file.changes        2014-05-22 
20:38:04.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.file.new/file.changes   2014-06-26 
15:07:12.000000000 +0200
@@ -1,0 +2,35 @@
+Tue Jun 24 16:27:38 UTC 2014 - [email protected]
+
+- Update to file version 5.19
+  * Misc buffer overruns and missing buffer size tests in cdf parsing
+    (Francisco Alonso, Jan Kaluza)
+  * Enforce limit of 8K on regex searches that have no limits
+  * Allow the l modifier for regex to mean line count. Default
+    to byte count. If line count is specified, assume a max
+    of 80 characters per line to limit the byte count.
+  * Don't allow conversions to be used for dates, allowing
+    the mask field to be used as an offset.
+  * Make the range operator limit the length of the
+    regex search.
+  * PR/347: Windows fixes
+  * PR/352: Hangul word processor recognition
+  * PR/354: Encoding irregularities in text files
+  * Fix uninitialized title in CDF files (Jan Kaluza)
+  * PR/351: Fix compilation of empty files 
+  * Fix integer formats: We don't specify 'l' or
+    'h' and 'hh' specifiers anymore, only 'll' for
+    quads and nothing for the rest. This is so that
+    magic writing is simpler.
+  * PR/341: Jan Kaluza, fix memory leak
+  * PR/342: Jan Kaluza, fix out of bounds read
+  * Fix issue with long formats not matching fmtcheck
+- Rename and change patch file-5.14-misc.dif to file-5.19-misc.dif
+- Rename and change patch file-5.14-printf.dif to file-5.19-printf.dif 
+- Rename and change patch file-5.07-biorad.dif to file-5.19-biorad.dif
+- Rename and change patch file-5.19.dif to file-5.17.dif
+- Rename and change patch file-4.24-cromfs.dif to file-5.19-cromfs.dif
+- Rename and change patch file-4.24-solv.dif to file-5.19-solv.dif
+- Rename and change patch file-5.12-zip2.0.dif to file-5.19-zip2.0.dif
+- Rename and change patch file-5.07-clicfs.dif to file-5.19-clicfs.dif
+
+-------------------------------------------------------------------
--- /work/SRC/openSUSE:Factory/file/python-magic.changes        2014-03-18 
13:37:09.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.file.new/python-magic.changes   2014-06-26 
15:07:12.000000000 +0200
@@ -1,0 +2,5 @@
+Wed Jun 25 09:07:13 UTC 2014 - [email protected]
+
+- adapt version in specfile to 5.19
+
+-------------------------------------------------------------------

Old:
----
  file-4.24-cromfs.dif
  file-4.24-solv.dif
  file-5.07-biorad.dif
  file-5.07-clicfs.dif
  file-5.12-zip2.0.dif
  file-5.14-misc.dif
  file-5.14-printf.dif
  file-5.17.dif
  file-5.18.tar.gz

New:
----
  file-5.19-biorad.dif
  file-5.19-clicfs.dif
  file-5.19-cromfs.dif
  file-5.19-misc.dif
  file-5.19-printf.dif
  file-5.19-solv.dif
  file-5.19-zip2.0.dif
  file-5.19.dif
  file-5.19.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ file.spec ++++++
--- /var/tmp/diff_new_pack.Dm0lyr/_old  2014-06-26 15:07:13.000000000 +0200
+++ /var/tmp/diff_new_pack.Dm0lyr/_new  2014-06-26 15:07:13.000000000 +0200
@@ -30,33 +30,33 @@
 %endif
 #
 # Set Version also in python-magic.spec
-Version:        5.18
+Version:        5.19
 Release:        0
 Summary:        A Tool to Determine File Types
 License:        BSD-2-Clause
 Group:          Productivity/File utilities
 Source:         ftp://ftp.astron.com/pub/file/file-%{version}.tar.gz
 Source2:        baselibs.conf
-Patch:          file-5.17.dif
-Patch1:         file-5.14-misc.dif
+Patch:          file-5.19.dif
+Patch1:         file-5.19-misc.dif
 Patch4:         file-4.24-autoconf.dif
 Patch5:         file-5.14-tex.dif
 Patch7:         file-4.20-ssd.dif
 Patch8:         file-4.20-xen.dif
 Patch9:         file-5.18-elf.dif
-Patch10:        file-5.14-printf.dif
+Patch10:        file-5.19-printf.dif
 Patch11:        file-5.12-zip.dif
 Patch12:        file-5.17-option.dif
 Patch13:        file-4.21-scribus.dif
 Patch15:        file-4.21-xcursor.dif
 Patch20:        file-4.24-mips.dif
-Patch22:        file-4.24-cromfs.dif
+Patch22:        file-5.19-cromfs.dif
 Patch25:        file-5.18-javacheck.dif
-Patch26:        file-4.24-solv.dif
-Patch27:        file-5.12-zip2.0.dif
+Patch26:        file-5.19-solv.dif
+Patch27:        file-5.19-zip2.0.dif
 Patch28:        file-5.07-iso9660.dif
-Patch31:        file-5.07-biorad.dif
-Patch32:        file-5.07-clicfs.dif
+Patch31:        file-5.19-biorad.dif
+Patch32:        file-5.19-clicfs.dif
 Patch33:        file-5.16-ocloexec.patch
 Patch34:        file-5.18-endian.patch
 Patch35:        file-5.12-nitpick.dif

++++++ python-magic.spec ++++++
--- /var/tmp/diff_new_pack.Dm0lyr/_old  2014-06-26 15:07:13.000000000 +0200
+++ /var/tmp/diff_new_pack.Dm0lyr/_new  2014-06-26 15:07:13.000000000 +0200
@@ -23,7 +23,7 @@
 BuildRequires:  python-devel
 BuildRequires:  zlib-devel
 Url:            http://www.darwinsys.com/file/
-Version:        5.18
+Version:        5.19
 Release:        0
 Summary:        Python module to use libmagic
 License:        BSD-3-Clause and BSD-4-Clause

++++++ file-5.07-biorad.dif -> file-5.19-biorad.dif ++++++
--- /work/SRC/openSUSE:Factory/file/file-5.07-biorad.dif        2013-10-02 
08:48:17.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.file.new/file-5.19-biorad.dif   2014-06-26 
15:07:12.000000000 +0200
@@ -1,6 +1,6 @@
 --- magic/Magdir/images
-+++ magic/Magdir/images        2013-09-30 00:00:00.000000000 +0000
-@@ -640,6 +640,8 @@
++++ magic/Magdir/images        2014-06-24 16:36:26.658235329 +0000
+@@ -655,6 +655,8 @@
  # 
http://web.archive.org/web/20050317223257/www.cs.ubc.ca/spider/ladic/text/biorad.txt
  # Samples: http://www.loci.wisc.edu/software/sample-data
  14    leshort <2
@@ -8,4 +8,4 @@
 +>49   byte 0
  >62   leshort <2
  >>54  leshort 12345           Bio-Rad .PIC Image File
- >>>0  leshort >0              %hd x
+ >>>0  leshort >0              %d x

++++++ file-5.07-clicfs.dif -> file-5.19-clicfs.dif ++++++
--- /work/SRC/openSUSE:Factory/file/file-5.07-clicfs.dif        2013-10-02 
08:48:17.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.file.new/file-5.19-clicfs.dif   2014-06-26 
15:07:12.000000000 +0200
@@ -3,7 +3,7 @@
 @@ -53,3 +53,11 @@
  
  0     string          SOLV            Sat-solver solv file,
- >4    belong          x               version %ld
+ >4    belong          x               version %d
 +
 +# coolo's clicfs
 +

++++++ file-4.24-cromfs.dif -> file-5.19-cromfs.dif ++++++
--- /work/SRC/openSUSE:Factory/file/file-4.24-cromfs.dif        2013-10-02 
08:48:17.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.file.new/file-5.19-cromfs.dif   2014-06-26 
15:07:12.000000000 +0200
@@ -1,5 +1,5 @@
 --- magic/Localstuff
-+++ magic/Localstuff   2013-09-30 00:00:00.000000000 +0000
++++ magic/Localstuff   2014-06-25 08:49:53.486735323 +0000
 @@ -36,3 +36,16 @@
  
  # File magic for X11 cursor data files
@@ -13,7 +13,7 @@
 +>16   ulequad >0      \b fblock table at %lld,
 +>24   ulequad >0      \b inode table at %lld,
 +>32   ulequad >0      \b root at %lld,
-+>40   ulelong >0      \b fblock size = %ld,
-+>44   ulelong >0      \b block size = %ld,
++>40   ulelong >0      \b fblock size = %d,
++>44   ulelong >0      \b block size = %d,
 +>48   ulequad >0      \b bytes = %lld
 +

++++++ file-5.14-misc.dif -> file-5.19-misc.dif ++++++
--- /work/SRC/openSUSE:Factory/file/file-5.14-misc.dif  2013-10-02 
08:48:17.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.file.new/file-5.19-misc.dif     2014-06-26 
15:07:12.000000000 +0200
@@ -9,99 +9,3 @@
  #0    string          if              Composer 669 Module sound data
  #0    string          JN              Composer 669 Module sound data 
(extended format)
  0     string          MAS_U           ULT(imate) Module sound data
---- magic/Magdir/bsdi
-+++ magic/Magdir/bsdi  2013-09-30 00:00:00.000000000 +0000
-@@ -11,7 +11,7 @@
- >32   byte            0x6a            (uses shared libs)
- 
- # same as in SunOS 4.x, except for static shared libraries
--0     belong&077777777        0600413         sparc demand paged
-+0     belong&077777777        0600413         SPARC demand paged
- >0    byte            &0x80
- >>20  belong          <4096           shared library
- >>20  belong          =4096           dynamically linked executable
-@@ -20,13 +20,13 @@
- >16   belong          >0              not stripped
- >36   belong          0xb4100001      (uses shared libs)
- 
--0     belong&077777777        0600410         sparc pure
-+0     belong&077777777        0600410         SPARC pure
- >0    byte            &0x80           dynamically linked executable
- >0    byte            ^0x80           executable
- >16   belong          >0              not stripped
- >36   belong          0xb4100001      (uses shared libs)
- 
--0     belong&077777777        0600407         sparc
-+0     belong&077777777        0600407         SPARC
- >0    byte            &0x80           dynamically linked executable
- >0    byte            ^0x80           executable
- >16   belong          >0              not stripped
---- magic/Magdir/mach
-+++ magic/Magdir/mach  2013-09-30 00:00:00.000000000 +0000
-@@ -121,7 +121,7 @@
- >>>4          belong&0x00ffffff       1       mc88100
- >>>4          belong&0x00ffffff       2       mc88110
- >>>4          belong&0x00ffffff       >2      mc88000 subarchitecture=%ld
-->>0   belong&0x00ffffff       14      sparc
-+>>0   belong&0x00ffffff       14      SPARC
- >>0   belong&0x00ffffff       15      i860g
- >>0   belong&0x00ffffff       16      alpha
- >>0   belong&0x00ffffff       17      rs6000
---- magic/Magdir/netbsd
-+++ magic/Magdir/netbsd        2013-09-30 00:00:00.000000000 +0000
-@@ -100,25 +100,25 @@
- 0     belong&0377777777       045200507       a.out NetBSD/powerpc core
- >12   string                  >\0             from '%s'
- 
--0     belong&0377777777       042400413       a.out NetBSD/sparc demand paged
-+0     belong&0377777777       042400413       a.out NetBSD/SPARC demand paged
- >0    byte                    &0x80           
- >>20  belong                  <8192           shared library
- >>20  belong                  =8192           dynamically linked executable
- >>20  belong                  >8192           dynamically linked executable
- >0    byte                    ^0x80           executable
- >16   belong                  >0              not stripped
--0     belong&0377777777       042400410       a.out NetBSD/sparc pure
-+0     belong&0377777777       042400410       a.out NetBSD/SPARC pure
- >0    byte                    &0x80           dynamically linked executable
- >0    byte                    ^0x80           executable
- >16   belong                  >0              not stripped
--0     belong&0377777777       042400407       a.out NetBSD/sparc
-+0     belong&0377777777       042400407       a.out NetBSD/SPARC
- >0    byte                    &0x80           dynamically linked executable
- >0    byte                    ^0x80
- >>0   byte                    &0x40           position independent
- >>20  belong                  !0              executable
- >>20  belong                  =0              object file
- >16   belong                  >0              not stripped
--0     belong&0377777777       042400507       a.out NetBSD/sparc core
-+0     belong&0377777777       042400507       a.out NetBSD/SPARC core
- >12   string                  >\0             from '%s'
- >32   belong                  !0              (signal %d)
- 
---- magic/Magdir/sun
-+++ magic/Magdir/sun   2013-09-30 00:00:00.000000000 +0000
-@@ -9,7 +9,7 @@
- # are in aout, as they're indistinguishable from other big-endian
- # 32-bit a.out files.
- #
--0     belong&077777777        0600413         a.out SunOS sparc demand paged
-+0     belong&077777777        0600413         a.out SunOS SPARC demand paged
- >0    byte            &0x80
- >>20  belong          <4096           shared library
- >>20  belong          =4096           dynamically linked executable
-@@ -17,12 +17,12 @@
- >0    byte            ^0x80           executable
- >16   belong          >0              not stripped
- 
--0     belong&077777777        0600410         a.out SunOS sparc pure
-+0     belong&077777777        0600410         a.out SunOS SPARC pure
- >0    byte            &0x80           dynamically linked executable
- >0    byte            ^0x80           executable
- >16   belong          >0              not stripped
- 
--0     belong&077777777        0600407         a.out SunOS sparc
-+0     belong&077777777        0600407         a.out SunOS SPARC
- >0    byte            &0x80           dynamically linked executable
- >0    byte            ^0x80           executable
- >16   belong          >0              not stripped

++++++ file-5.14-printf.dif -> file-5.19-printf.dif ++++++
--- /work/SRC/openSUSE:Factory/file/file-5.14-printf.dif        2013-10-02 
08:48:17.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.file.new/file-5.19-printf.dif   2014-06-26 
15:07:12.000000000 +0200
@@ -1,9 +1,9 @@
 --- src/apprentice.c
-+++ src/apprentice.c   2013-09-30 00:00:00.000000000 +0000
-@@ -2072,8 +2072,16 @@ check_format_type(const char *ptr, int t
-               quad = 1;
-               /*FALLTHROUGH*/
-       case FILE_FMT_NUM:
++++ src/apprentice.c   2014-06-24 16:33:48.770235732 +0000
+@@ -2173,8 +2173,16 @@ check_format_type(const char *ptr, int t
+                       }
+               } else
+                       h = 0;
 +              if (*ptr == '#')
 +                      ptr++;
 +              if (*ptr == ' ')
@@ -17,13 +17,3 @@
                if (*ptr == '.')
                        ptr++;
                while (isdigit((unsigned char)*ptr)) ptr++;
-@@ -2115,6 +2123,9 @@ check_format_type(const char *ptr, int t
-                               default:
-                                       return -1;
-                               }
-+                      case 'o':
-+                      case 'x':
-+                      case 'X':
-                       case 'd':
-                               return 0;
-                       default:

++++++ file-4.24-solv.dif -> file-5.19-solv.dif ++++++
--- /work/SRC/openSUSE:Factory/file/file-4.24-solv.dif  2013-10-02 
08:48:17.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.file.new/file-5.19-solv.dif     2014-06-26 
15:07:12.000000000 +0200
@@ -1,10 +1,10 @@
 --- magic/Localstuff
-+++ magic/Localstuff   2013-09-30 00:00:00.000000000 +0000
++++ magic/Localstuff   2014-06-25 08:53:43.110735387 +0000
 @@ -49,3 +49,7 @@
- >44   ulelong >0      \b block size = %ld,
+ >44   ulelong >0      \b block size = %d,
  >48   ulequad >0      \b bytes = %lld
  
 +# libsatsolver solv file
 +
 +0     string          SOLV            Sat-solver solv file,
-+>4    belong          x               version %ld
++>4    belong          x               version %d

++++++ file-5.12-zip2.0.dif -> file-5.19-zip2.0.dif ++++++
--- /work/SRC/openSUSE:Factory/file/file-5.12-zip2.0.dif        2013-10-02 
08:48:17.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.file.new/file-5.19-zip2.0.dif   2014-06-26 
15:07:12.000000000 +0200
@@ -1,12 +1,12 @@
 --- magic/Magdir/archive
-+++ magic/Magdir/archive       2013-09-30 00:00:00.000000000 +0000
-@@ -585,6 +585,10 @@
++++ magic/Magdir/archive       2014-06-25 08:56:37.758234870 +0000
+@@ -586,6 +586,10 @@
  # PKZIP multi-volume archive
  0     string          PK\x07\x08PK\x03\x04    Zip multi-volume archive data, 
at least PKZIP v2.50 to extract
  !:mime        application/zip
 +>30   ubelong         0x6d696d65      Zip archive data, at least v2.0 to 
extract
 +>>34  ubelong         0x74797065      \b, mime type
-+>>>38 regex           application/[a-z\+\-]+  \b %s
++>>>38 regex           application/[a-z+-]+    \b %s
 +!:mime        application/unknown+zip
  
  # Zip archives (Greg Roelofs, c/o [email protected])

++++++ file-4.24-cromfs.dif -> file-5.19.dif ++++++
--- /work/SRC/openSUSE:Factory/file/file-4.24-cromfs.dif        2013-10-02 
08:48:17.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.file.new/file-5.19.dif  2014-06-26 
15:07:12.000000000 +0200
@@ -1,19 +1,570 @@
---- magic/Localstuff
-+++ magic/Localstuff   2013-09-30 00:00:00.000000000 +0000
-@@ -36,3 +36,16 @@
- 
- # File magic for X11 cursor data files
- 0     string          Xcur\020\000    X11 cursor data
-+
-+# File magic for CROM File System
-+
-+0     string  CROMFS  CROMFS
-+>6    string  >\0     \b version %2.2s,
-+>8    ulequad >0      \b block data at %lld,
-+>16   ulequad >0      \b fblock table at %lld,
-+>24   ulequad >0      \b inode table at %lld,
-+>32   ulequad >0      \b root at %lld,
-+>40   ulelong >0      \b fblock size = %ld,
-+>44   ulelong >0      \b block size = %ld,
-+>48   ulequad >0      \b bytes = %lld
+--- magic/Magdir/elf
++++ magic/Magdir/elf   2013-09-30 00:00:00.000000000 +0000
+@@ -128,7 +128,7 @@
+ >18   leshort         47              Renesas H8/300H,
+ >18   leshort         48              Renesas H8S,
+ >18   leshort         49              Renesas H8/500,
+->18   leshort         50              IA-64,
++>18   leshort         50              IA-64 (Intel 64 bit architecture),
+ >18   leshort         51              Stanford MIPS-X,
+ >18   leshort         52              Motorola Coldfire,
+ >18   leshort         53              Motorola M68HC12,
+--- magic/Magdir/linux
++++ magic/Magdir/linux 2013-12-02 11:09:39.000000000 +0000
+@@ -100,23 +100,27 @@
+ # and Nicolas Lichtmaier <[email protected]>
+ # All known start with: b8 c0 07 8e d8 b8 00 90 8e c0 b9 00 01 29 f6 29
+ # Linux kernel boot images (i386 arch) (Wolfram Kleff)
+-514   string          HdrS            Linux kernel
++514   string          HdrS            Linux
+ !:strength + 55
+->510  leshort         0xAA55          x86 boot executable
+->>518 leshort         >0x1ff
+->>>529        byte            0               zImage,
+->>>529        byte            1               bzImage,
+->>>526        lelong          >0
+->>>>(526.s+0x200) string      >\0     version %s,
+->>498 leshort         1               RO-rootFS,
+->>498 leshort         0               RW-rootFS,
+->>508 leshort         >0              root_dev 0x%X,
+->>502 leshort         >0              swap_dev 0x%X,
+->>504 leshort         >0              RAMdisksize %u KB,
+->>506 leshort         0xFFFF          Normal VGA
+->>506 leshort         0xFFFE          Extended VGA
+->>506 leshort         0xFFFD          Prompt for Videomode
+->>506 leshort         >0              Video mode %d
++>510  leshort         0xAA55          \b/x86 Kernel
++>510  leshort         <0xAA55         Kernel
++>510  leshort         >0xAA55         Kernel
++>518  leshort         0x0105          \b, Setup Version 0x105, zImage
++>518  leshort         >0x0105         \b, Setup Version %#x
++>518  leshort         >0x1ff
++>>529 byte            0               \b, zImage
++>>529 byte            1               \b, bzImage
++>>526 lelong          >0
++>>>(526.s+0x200)      string  >\0     \b, Version %s
++>>498 leshort         1               \b, RO-rootFS
++>>498 leshort         0               \b, RW-rootFS
++>>508 leshort         >0              \b, root_dev 0x%X
++>>502 leshort         >0              \b, swap_dev 0x%X
++>>504 leshort         >0              \b, RAMdisksize %u KB
++>>506 leshort         0xFFFF          \b, Normal VGA
++>>506 leshort         0xFFFE          \b, Extended VGA
++>>506 leshort         0xFFFD          \b, Prompt for Videomode
++>>506 leshort         >0              \b, Video mode %d
+ # This also matches new kernels, which were caught above by "HdrS".
+ 0             belong  0xb8c0078e      Linux kernel
+ >0x1e3                string  Loading         version 1.3.79 or older
+--- magic/Magdir/msad
++++ magic/Magdir/msad  2013-09-30 00:00:00.000000000 +0000
+@@ -0,0 +1,5 @@
++#------------------------------------------------------------------------------
++# msad:  file(1) magic for msad
++# Microsoft visual C
++# This must precede the heuristic for raw G3 data
++4     string  Standard\ Jet\ DB       Microsoft Access Database
+--- magic/Magdir/msdos
++++ magic/Magdir/msdos 2013-09-30 00:00:00.000000000 +0000
+@@ -99,9 +99,9 @@
+ >>>(0x3c.l+22)        leshort&0x0200  >0      (stripped to external PDB)
+ >>>(0x3c.l+22)        leshort&0x1000  >0      system file
+ >>>(0x3c.l+24)        leshort         0x010b
+->>>>(0x3c.l+232) lelong       >0      Mono/.Net assembly
++>>>>(0x3c.l+232) lelong       >0      \b, Mono/.Net assembly
+ >>>(0x3c.l+24)        leshort         0x020b
+->>>>(0x3c.l+248) lelong       >0      Mono/.Net assembly
++>>>>(0x3c.l+248) lelong       >0      \b, Mono/.Net assembly
+ 
+ # hooray, there's a DOS extender using the PE format, with a valid PE
+ # executable inside (which just prints a message and exits if run in win)
+--- magic/Makefile.am
++++ magic/Makefile.am  2013-09-30 00:00:00.000000000 +0000
+@@ -5,7 +5,7 @@ MAGIC_FRAGMENT_BASE = Magdir
+ MAGIC_DIR = $(top_srcdir)/magic
+ MAGIC_FRAGMENT_DIR = $(MAGIC_DIR)/$(MAGIC_FRAGMENT_BASE)
+ 
+-pkgdata_DATA = magic.mgc
++pkgdata_DATA = magic.mgc magic
+ 
+ EXTRA_DIST = \
+ $(MAGIC_DIR)/Header \
+@@ -21,7 +21,6 @@ $(MAGIC_FRAGMENT_DIR)/android \
+ $(MAGIC_FRAGMENT_DIR)/animation \
+ $(MAGIC_FRAGMENT_DIR)/aout \
+ $(MAGIC_FRAGMENT_DIR)/apl \
+-$(MAGIC_FRAGMENT_DIR)/apple \
+ $(MAGIC_FRAGMENT_DIR)/applix \
+ $(MAGIC_FRAGMENT_DIR)/archive \
+ $(MAGIC_FRAGMENT_DIR)/assembler \
+@@ -76,7 +75,6 @@ $(MAGIC_FRAGMENT_DIR)/epoc \
+ $(MAGIC_FRAGMENT_DIR)/erlang \
+ $(MAGIC_FRAGMENT_DIR)/esri \
+ $(MAGIC_FRAGMENT_DIR)/fcs \
+-$(MAGIC_FRAGMENT_DIR)/filesystems \
+ $(MAGIC_FRAGMENT_DIR)/flash \
+ $(MAGIC_FRAGMENT_DIR)/fonts \
+ $(MAGIC_FRAGMENT_DIR)/fortran \
+@@ -114,6 +112,8 @@ $(MAGIC_FRAGMENT_DIR)/isz \
+ $(MAGIC_FRAGMENT_DIR)/java \
+ $(MAGIC_FRAGMENT_DIR)/javascript \
+ $(MAGIC_FRAGMENT_DIR)/jpeg \
++$(MAGIC_FRAGMENT_DIR)/linux \
++$(MAGIC_FRAGMENT_DIR)/filesystems \
+ $(MAGIC_FRAGMENT_DIR)/karma \
+ $(MAGIC_FRAGMENT_DIR)/kde \
+ $(MAGIC_FRAGMENT_DIR)/keepass \
+@@ -121,7 +121,6 @@ $(MAGIC_FRAGMENT_DIR)/kml \
+ $(MAGIC_FRAGMENT_DIR)/lecter \
+ $(MAGIC_FRAGMENT_DIR)/lex \
+ $(MAGIC_FRAGMENT_DIR)/lif \
+-$(MAGIC_FRAGMENT_DIR)/linux \
+ $(MAGIC_FRAGMENT_DIR)/lisp \
+ $(MAGIC_FRAGMENT_DIR)/llvm \
+ $(MAGIC_FRAGMENT_DIR)/lua \
+@@ -129,7 +128,6 @@ $(MAGIC_FRAGMENT_DIR)/luks \
+ $(MAGIC_FRAGMENT_DIR)/m4 \
+ $(MAGIC_FRAGMENT_DIR)/mach \
+ $(MAGIC_FRAGMENT_DIR)/macos \
+-$(MAGIC_FRAGMENT_DIR)/macintosh \
+ $(MAGIC_FRAGMENT_DIR)/magic \
+ $(MAGIC_FRAGMENT_DIR)/mail.news \
+ $(MAGIC_FRAGMENT_DIR)/make \
+@@ -148,10 +146,10 @@ $(MAGIC_FRAGMENT_DIR)/misctools \
+ $(MAGIC_FRAGMENT_DIR)/mkid \
+ $(MAGIC_FRAGMENT_DIR)/mlssa \
+ $(MAGIC_FRAGMENT_DIR)/mmdf \
+-$(MAGIC_FRAGMENT_DIR)/modem \
+ $(MAGIC_FRAGMENT_DIR)/motorola \
+ $(MAGIC_FRAGMENT_DIR)/mozilla \
+ $(MAGIC_FRAGMENT_DIR)/msdos \
++$(MAGIC_FRAGMENT_DIR)/modem \
+ $(MAGIC_FRAGMENT_DIR)/msooxml \
+ $(MAGIC_FRAGMENT_DIR)/msx \
+ $(MAGIC_FRAGMENT_DIR)/msvc \
+@@ -195,6 +193,8 @@ $(MAGIC_FRAGMENT_DIR)/pyramid \
+ $(MAGIC_FRAGMENT_DIR)/python \
+ $(MAGIC_FRAGMENT_DIR)/revision \
+ $(MAGIC_FRAGMENT_DIR)/riff \
++$(MAGIC_FRAGMENT_DIR)/apple \
++$(MAGIC_FRAGMENT_DIR)/macintosh \
+ $(MAGIC_FRAGMENT_DIR)/rinex \
+ $(MAGIC_FRAGMENT_DIR)/rpm \
+ $(MAGIC_FRAGMENT_DIR)/rtf \
+@@ -264,8 +264,20 @@ $(MAGIC_FRAGMENT_DIR)/zfs \
+ $(MAGIC_FRAGMENT_DIR)/zilog \
+ $(MAGIC_FRAGMENT_DIR)/zyxel 
+ 
++RAW   = magic
+ MAGIC = magic.mgc
+-CLEANFILES = ${MAGIC} $(MAGIC_FRAGMENT_DIR)/Localstuff
++CLEANFILES = ${MAGIC} $(MAGIC_DIR)/Localstuff ${RAW}
++
++${RAW}: $(MAGIC_DIR)/Header $(MAGIC_DIR)/Localstuff $(EXTRA_DIST)
++      cat /dev/null > $@
++      for frag in $(EXTRA_DIST); do \
++          if test -f $(srcdir)/$$frag; then \
++              f=$(srcdir)/$$frag; \
++          else \
++              f=$$frag; \
++          fi; \
++          cat $$f; \
++      done >> $@
+ 
+ # FIXME: Build file natively as well so that it can be used to compile
+ # the target's magic file; for now we bail if the local version does not match
+@@ -277,19 +289,22 @@ FILE_COMPILE = $(top_builddir)/src/file$
+ FILE_COMPILE_DEP = $(FILE_COMPILE)
+ endif
+ 
+-${MAGIC}: $(EXTRA_DIST) $(FILE_COMPILE_DEP)
+-      @rm -fr magic
+-      @mkdir magic && cp -p $(EXTRA_DIST) magic
+-      @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \
+-          echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \
+-        else \
+-          v=$$(file --version | sed -e s/file-// -e q); \
+-          if [ "$$v" != "${PACKAGE_VERSION}" ]; then \
+-              echo "Cannot use the installed version of file ($$v) to"; \
+-              echo "cross-compile file ${PACKAGE_VERSION}"; \
+-              echo "Please install file ${PACKAGE_VERSION} locally first"; \
+-              exit 1; \
+-          fi; \
+-        fi)
+-      $(FILE_COMPILE) -C -m magic
+-      @rm -fr magic
++${MAGIC}: $(EXTRA_DIST) $(FILE_COMPILE_DEP) $(RAW)
++      $(FILE_COMPILE) -C -m $(RAW)
++
++#${MAGIC}: $(EXTRA_DIST) $(FILE_COMPILE_DEP)
++#     @rm -fr magic
++#     @mkdir magic && cp -p $(EXTRA_DIST) magic
++#     @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \
++#         echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \
++#       else \
++#         v=$$(file --version | sed -e s/file-// -e q); \
++#         if [ "$$v" != "${PACKAGE_VERSION}" ]; then \
++#             echo "Cannot use the installed version of file ($$v) to"; \
++#             echo "cross-compile file ${PACKAGE_VERSION}"; \
++#             echo "Please install file ${PACKAGE_VERSION} locally first"; \
++#             exit 1; \
++#         fi; \
++#       fi)
++#     $(FILE_COMPILE) -C -m magic
++#     @rm -fr magic
+--- magic/Makefile.in
++++ magic/Makefile.in  2014-02-18 10:19:46.542235198 +0000
+@@ -267,7 +267,7 @@ top_srcdir = @top_srcdir@
+ MAGIC_FRAGMENT_BASE = Magdir
+ MAGIC_DIR = $(top_srcdir)/magic
+ MAGIC_FRAGMENT_DIR = $(MAGIC_DIR)/$(MAGIC_FRAGMENT_BASE)
+-pkgdata_DATA = magic.mgc
++pkgdata_DATA = magic.mgc magic
+ EXTRA_DIST = \
+ $(MAGIC_DIR)/Header \
+ $(MAGIC_DIR)/Localstuff \
+@@ -282,7 +282,6 @@ $(MAGIC_FRAGMENT_DIR)/android \
+ $(MAGIC_FRAGMENT_DIR)/animation \
+ $(MAGIC_FRAGMENT_DIR)/aout \
+ $(MAGIC_FRAGMENT_DIR)/apl \
+-$(MAGIC_FRAGMENT_DIR)/apple \
+ $(MAGIC_FRAGMENT_DIR)/applix \
+ $(MAGIC_FRAGMENT_DIR)/archive \
+ $(MAGIC_FRAGMENT_DIR)/assembler \
+@@ -337,7 +336,6 @@ $(MAGIC_FRAGMENT_DIR)/epoc \
+ $(MAGIC_FRAGMENT_DIR)/erlang \
+ $(MAGIC_FRAGMENT_DIR)/esri \
+ $(MAGIC_FRAGMENT_DIR)/fcs \
+-$(MAGIC_FRAGMENT_DIR)/filesystems \
+ $(MAGIC_FRAGMENT_DIR)/flash \
+ $(MAGIC_FRAGMENT_DIR)/fonts \
+ $(MAGIC_FRAGMENT_DIR)/fortran \
+@@ -375,6 +373,8 @@ $(MAGIC_FRAGMENT_DIR)/isz \
+ $(MAGIC_FRAGMENT_DIR)/java \
+ $(MAGIC_FRAGMENT_DIR)/javascript \
+ $(MAGIC_FRAGMENT_DIR)/jpeg \
++$(MAGIC_FRAGMENT_DIR)/linux \
++$(MAGIC_FRAGMENT_DIR)/filesystems \
+ $(MAGIC_FRAGMENT_DIR)/karma \
+ $(MAGIC_FRAGMENT_DIR)/kde \
+ $(MAGIC_FRAGMENT_DIR)/keepass \
+@@ -382,7 +382,6 @@ $(MAGIC_FRAGMENT_DIR)/kml \
+ $(MAGIC_FRAGMENT_DIR)/lecter \
+ $(MAGIC_FRAGMENT_DIR)/lex \
+ $(MAGIC_FRAGMENT_DIR)/lif \
+-$(MAGIC_FRAGMENT_DIR)/linux \
+ $(MAGIC_FRAGMENT_DIR)/lisp \
+ $(MAGIC_FRAGMENT_DIR)/llvm \
+ $(MAGIC_FRAGMENT_DIR)/lua \
+@@ -390,7 +389,6 @@ $(MAGIC_FRAGMENT_DIR)/luks \
+ $(MAGIC_FRAGMENT_DIR)/m4 \
+ $(MAGIC_FRAGMENT_DIR)/mach \
+ $(MAGIC_FRAGMENT_DIR)/macos \
+-$(MAGIC_FRAGMENT_DIR)/macintosh \
+ $(MAGIC_FRAGMENT_DIR)/magic \
+ $(MAGIC_FRAGMENT_DIR)/mail.news \
+ $(MAGIC_FRAGMENT_DIR)/make \
+@@ -409,10 +407,10 @@ $(MAGIC_FRAGMENT_DIR)/misctools \
+ $(MAGIC_FRAGMENT_DIR)/mkid \
+ $(MAGIC_FRAGMENT_DIR)/mlssa \
+ $(MAGIC_FRAGMENT_DIR)/mmdf \
+-$(MAGIC_FRAGMENT_DIR)/modem \
+ $(MAGIC_FRAGMENT_DIR)/motorola \
+ $(MAGIC_FRAGMENT_DIR)/mozilla \
+ $(MAGIC_FRAGMENT_DIR)/msdos \
++$(MAGIC_FRAGMENT_DIR)/modem \
+ $(MAGIC_FRAGMENT_DIR)/msooxml \
+ $(MAGIC_FRAGMENT_DIR)/msx \
+ $(MAGIC_FRAGMENT_DIR)/msvc \
+@@ -456,6 +454,8 @@ $(MAGIC_FRAGMENT_DIR)/pyramid \
+ $(MAGIC_FRAGMENT_DIR)/python \
+ $(MAGIC_FRAGMENT_DIR)/revision \
+ $(MAGIC_FRAGMENT_DIR)/riff \
++$(MAGIC_FRAGMENT_DIR)/apple \
++$(MAGIC_FRAGMENT_DIR)/macintosh \
+ $(MAGIC_FRAGMENT_DIR)/rinex \
+ $(MAGIC_FRAGMENT_DIR)/rpm \
+ $(MAGIC_FRAGMENT_DIR)/rtf \
+@@ -525,10 +525,22 @@ $(MAGIC_FRAGMENT_DIR)/zfs \
+ $(MAGIC_FRAGMENT_DIR)/zilog \
+ $(MAGIC_FRAGMENT_DIR)/zyxel 
+ 
++RAW   = magic
+ MAGIC = magic.mgc
+-CLEANFILES = ${MAGIC} $(MAGIC_FRAGMENT_DIR)/Localstuff
++CLEANFILES = ${MAGIC} $(MAGIC_FRAGMENT_DIR)/Localstuff ${RAW}
+ @IS_CROSS_COMPILE_FALSE@FILE_COMPILE = $(top_builddir)/src/file${EXEEXT}
+ 
++${RAW}: $(MAGIC_DIR)/Header $(MAGIC_DIR)/Localstuff $(EXTRA_DIST)
++      cat /dev/null > $@
++      for frag in $(EXTRA_DIST); do \
++          if test -f $(srcdir)/$$frag; then \
++              f=$(srcdir)/$$frag; \
++          else \
++              f=$$frag; \
++          fi; \
++          cat $$f; \
++      done >> $@
++
+ # FIXME: Build file natively as well so that it can be used to compile
+ # the target's magic file; for now we bail if the local version does not match
+ @IS_CROSS_COMPILE_TRUE@FILE_COMPILE = file${EXEEXT}
+@@ -749,23 +761,25 @@ uninstall-am: uninstall-pkgdataDATA
+       mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
+       ps ps-am tags-am uninstall uninstall-am uninstall-pkgdataDATA
+ 
++${MAGIC}: $(EXTRA_DIST) $(FILE_COMPILE_DEP) $(RAW)
++      $(FILE_COMPILE) -C -m $(RAW)
+ 
+-${MAGIC}: $(EXTRA_DIST) $(FILE_COMPILE_DEP)
+-      @rm -fr magic
+-      @mkdir magic && cp -p $(EXTRA_DIST) magic
+-      @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \
+-          echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \
+-        else \
+-          v=$$(file --version | sed -e s/file-// -e q); \
+-          if [ "$$v" != "${PACKAGE_VERSION}" ]; then \
+-              echo "Cannot use the installed version of file ($$v) to"; \
+-              echo "cross-compile file ${PACKAGE_VERSION}"; \
+-              echo "Please install file ${PACKAGE_VERSION} locally first"; \
+-              exit 1; \
+-          fi; \
+-        fi)
+-      $(FILE_COMPILE) -C -m magic
+-      @rm -fr magic
++#${MAGIC}: $(EXTRA_DIST) $(FILE_COMPILE_DEP)
++#     @rm -fr magic
++#     @mkdir magic && cp -p $(EXTRA_DIST) magic
++#     @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \
++#         echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \
++#       else \
++#         v=$$(file --version | sed -e s/file-// -e q); \
++#         if [ "$$v" != "${PACKAGE_VERSION}" ]; then \
++#             echo "Cannot use the installed version of file ($$v) to"; \
++#             echo "cross-compile file ${PACKAGE_VERSION}"; \
++#             echo "Please install file ${PACKAGE_VERSION} locally first"; \
++#             exit 1; \
++#         fi; \
++#       fi)
++#     $(FILE_COMPILE) -C -m magic
++#     @rm -fr magic
+ 
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+--- src/Makefile.am
++++ src/Makefile.am    2013-09-30 00:00:00.000000000 +0000
+@@ -1,4 +1,4 @@
+-MAGIC = $(pkgdatadir)/magic
++MAGIC = $(sysconfdir)/magic:$(pkgdatadir)/magic
+ lib_LTLIBRARIES = libmagic.la
+ include_HEADERS = magic.h
+ 
+--- src/dcore.c
++++ src/dcore.c        2013-09-30 00:00:00.000000000 +0000
+@@ -0,0 +1,207 @@
++/*
++ * Show goo about ELF core files
++ * Jeremy Fitzhardinge <[email protected]> 1996
++ */
++#include <unistd.h>
++#include <fcntl.h>
++#include <stdlib.h>
++#include <stdio.h>
++#include <sys/types.h>
++#include <string.h>
++#if defined __GLIBC__ && __GLIBC__ >= 2
++#include <elf.h>
++#include <sys/procfs.h>
++# ifndef NT_PRFPREG
++#  define NT_PRFPREG 2
++# endif
++# ifndef NT_TASKSTRUCT
++#  define NT_TASKSTRUCT 4
++# endif
++#else
++#include <linux/elf.h>
++#include <linux/elfcore.h>
++#endif
++
++static void fperror(const char *str)
++{
++      perror(str);
++      exit(1);
++}
++
++static size_t myread(int fd, void *buf, size_t sz)
++{
++      size_t ret;
++      
++      if ((ret = read(fd, buf, sz)) != sz)
++              fperror("read failed");
++      return ret;
++}
++
++static void print_prstatus(const prstatus_t *pr)
++{
++      unsigned i;
++      static const char *regs[] = { "ebx", "ecx", "edx", "esi", "edi", "ebp",
++                                            "eax", "ds", "es", "fs", "gs",
++                                            "orig_eax", "eip", "cs",
++                                            "efl", "uesp", "ss"};
++      
++      printf("    pid=%d ppid=%d pgrp=%d sid=%d\n",
++            pr->pr_pid, pr->pr_ppid, pr->pr_pgrp, pr->pr_sid);
++      for(i = 0; i < NGREG; i++)
++      {
++              unsigned long val = pr->pr_reg[i];
++              printf("    %-2u %-5s=%08lx %lu\n", i, regs[i], val, val);
++      }
++}
++
++static void print_prpsinfo(const prpsinfo_t *ps)
++{
++      printf("    uid=%d gid=%d\n", ps->pr_uid, ps->pr_gid);
++      printf("    comm=%s\n", ps->pr_fname);
++      printf("    psargs=%s\n", ps->pr_psargs);
++}
++
++#define roundup(x, y)  ((((x)+((y)-1))/(y))*(y))
++
++static void do_note(int fd, Elf32_Phdr *phdr)
++{
++      off_t here = lseek(fd, 0, SEEK_CUR);
++      int size = phdr->p_filesz;
++      char *raw = alloca(size), *end;
++      end = raw+size;
++      
++      lseek(fd, phdr->p_offset, SEEK_SET);
++      myread(fd, raw, size);
++
++      while(raw < end)
++      {
++              Elf32_Nhdr *note = (Elf32_Nhdr *)raw;
++              const char *str;
++              const char *name, *desc;
++              
++              raw += sizeof(*note);
++              name = raw;
++              raw += roundup(note->n_namesz, sizeof(long));
++              desc = raw;
++              raw += roundup(note->n_descsz, sizeof(long));
++
++              printf("  name=%.*s", (int)note->n_namesz, name);
++
++              if(strncmp(name, "CORE", note->n_namesz) != 0)
++              {
++                      printf("\n");
++                      continue;
++              }
++              
++              switch(note->n_type)
++              {
++#define X(x)  case x: str = #x; break;
++                      X(NT_PRSTATUS);
++                      X(NT_PRFPREG);
++                      X(NT_PRPSINFO);
++                      X(NT_TASKSTRUCT);
++#undef X
++              default:
++                      str = "???";
++              }
++              printf(" n_type=%s n_descsz=%ld\n",
++                     str, note->n_descsz);
++              switch(note->n_type)
++              {
++              case NT_PRSTATUS:
++                      print_prstatus((prstatus_t *)desc);
++                      break;
++              case NT_PRPSINFO:
++                      print_prpsinfo((prpsinfo_t *)desc);
++                      break;
++              }
++      }
++      lseek(fd, here, SEEK_SET);
++}
++
++int main(int argc, char *argv[])
++{
++      int fd;
++      Elf32_Ehdr elf;
++      int i;
++      
++      if (argc != 2)
++      {
++              fprintf(stderr, "Usage: %s corefile\n", argv[0]);
++              exit(1);
++      }
++
++      if ((fd = open(argv[1], O_RDONLY)) == -1)
++              fperror("open of core");
++
++      myread(fd, &elf, sizeof(elf));
++
++      if (memcmp(ELFMAG, elf.e_ident, SELFMAG) != 0)
++              printf("bad magic\n");
++
++      if (elf.e_ident[EI_CLASS] != ELFCLASS32)
++              printf("wrong class\n");
++              
++      if (elf.e_ident[EI_DATA] != ELFDATA2LSB)
++              printf("wrong endianess\n");
++
++      if (elf.e_ident[EI_VERSION] != EV_CURRENT)
++              printf("wrong version\n");
++
++      {
++              const char *str;
++              switch(elf.e_type)
++              {
++#define C(x)  case ET_##x: str = #x; break;
++                      C(NONE);
++                      C(REL);
++                      C(EXEC);
++                      C(DYN);
++                      C(CORE);
++#undef C
++              default: str = "???"; break;
++              }
++              printf("elf file type ET_%s\n", str);
++      }
++
++      if (elf.e_machine != EM_386 && elf.e_machine != EM_486)
++              printf("not i386 or i486\n");
++
++      if (elf.e_ehsize != sizeof(elf))
++              printf("wrong header size\n");
++
++      if (elf.e_phentsize != sizeof(Elf32_Phdr))
++              printf("wrong phdr size\n");
++
++      if (lseek(fd, elf.e_phoff, SEEK_SET) != (off_t)elf.e_phoff)
++              fperror("lseek to phdr failed\n");
++
++      for(i = 0; i < elf.e_phnum; i++)
++      {
++              Elf32_Phdr phdr;
++              const char *str;
++              
++              myread(fd, &phdr, sizeof(phdr));
++              switch(phdr.p_type)
++              {
++#define C(x)  case PT_##x: str = #x; break;
++                      C(NULL);
++                      C(LOAD);
++                      C(DYNAMIC);
++                      C(INTERP);
++                      C(NOTE);
++                      C(SHLIB);
++                      C(PHDR);
++#undef C
++              default:
++                      str = "???"; break;
++              }
++              printf("type PT_%s off=%ld vaddr=%lx filesz=%ld flags=%lx\n",
++                     str, phdr.p_offset, phdr.p_vaddr, phdr.p_filesz,
++                     (unsigned long)phdr.p_flags);
++              if (phdr.p_type == PT_NOTE)
++                      do_note(fd, &phdr);
++      }
++      exit(0);
++}
 +

++++++ file-5.18.tar.gz -> file-5.19.tar.gz ++++++
++++ 6185 lines of diff (skipped)

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to