SHA256
3
0
forked from pool/file

Accepting request 419961 from Base:System

- Add patch file-5.28-compress.patch
  to fix crash as found in build system

- Update to file version 5.28
  * fix leak on allocation failure
  * PR/555: Avoid overflow for offset > nbytes
  * PR/550: Segv on DER parsing:
      - use the correct variable for length
      - set offset to 0 on failure.
- Port patches to 5.28
  file-4.24-autoconf.dif
  file-5.15-clear-invalid.patch
  file-5.16-ocloexec.patch
  file-5.19-biorad.dif
  file-5.23-endian.patch
  file-5.24-nitpick.dif
  file-secure_getenv.patch
- Remove patches now upstream
  file-5.26-revert-close.patch
- Rename patches
  file-5.26.dif becomes file-5.28.dif

- Update to file version 5.27
  * Errors comparing DER entries or computing offsets
    are just indications of malformed non-DER files.
    Don't print them.
  * Offset comparison was off-by-one.
  * Fix compression code (Werner Fink)
  * Put new bytes constant in the right file (not the generated one)
- Remove patches

OBS-URL: https://build.opensuse.org/request/show/419961
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/file?expand=0&rev=94
This commit is contained in:
Dominique Leuenberger 2016-08-22 08:50:15 +00:00 committed by Git OBS Bridge
commit ca4132142d
27 changed files with 362 additions and 306 deletions

View File

@ -1,3 +1,6 @@
libmagic1 libmagic1
obsoletes "file-<targettype> < <version>" requires "file-magic-<targettype> = <version>"
provides "file-<targettype> = <version>" file-devel
requires -file-<targettype>
requires "libmagic1-<targettype> = <version>"
file-magic

View File

@ -1,5 +1,10 @@
---
doc/Makefile.am | 6 ++++--
src/readelf.h | 4 ++++
2 files changed, 8 insertions(+), 2 deletions(-)
--- doc/Makefile.am --- doc/Makefile.am
+++ doc/Makefile.am 2013-09-30 00:00:00.000000000 +0000 +++ doc/Makefile.am 2016-08-16 11:45:43.001478793 +0000
@@ -5,7 +5,8 @@ else @@ -5,7 +5,8 @@ else
man_MAGIC = magic.4 man_MAGIC = magic.4
endif endif
@ -21,7 +26,7 @@
sed -e s@__CSECTION__@1@g \ sed -e s@__CSECTION__@1@g \
-e s@__FSECTION__@${fsect}@g \ -e s@__FSECTION__@${fsect}@g \
--- src/readelf.h --- src/readelf.h
+++ src/readelf.h 2013-09-30 00:00:00.000000000 +0000 +++ src/readelf.h 2016-08-16 11:45:43.001478793 +0000
@@ -34,7 +34,10 @@ @@ -34,7 +34,10 @@
#ifndef __fake_elf_h__ #ifndef __fake_elf_h__
#define __fake_elf_h__ #define __fake_elf_h__
@ -33,7 +38,7 @@
#include <stdint.h> #include <stdint.h>
#endif #endif
@@ -339,4 +342,5 @@ typedef struct { @@ -398,4 +401,5 @@ typedef struct {
#define AV_386_SSE4_1 0x00800000 #define AV_386_SSE4_1 0x00800000
#define AV_386_SSE4_2 0x01000000 #define AV_386_SSE4_2 0x01000000

View File

@ -1,92 +0,0 @@
--- magic/Magdir/elf
+++ magic/Magdir/elf 2008-04-14 16:57:32.740393508 +0200
@@ -51,26 +51,26 @@
>>18 leshort 8
# only for 32-bit
>>>4 byte 1
->>>>36 lelong&0xf0000000 0x00000000 MIPS-I
->>>>36 lelong&0xf0000000 0x10000000 MIPS-II
->>>>36 lelong&0xf0000000 0x20000000 MIPS-III
->>>>36 lelong&0xf0000000 0x30000000 MIPS-IV
->>>>36 lelong&0xf0000000 0x40000000 MIPS-V
->>>>36 lelong&0xf0000000 0x50000000 MIPS32
->>>>36 lelong&0xf0000000 0x60000000 MIPS64
->>>>36 lelong&0xf0000000 0x70000000 MIPS32 rel2
->>>>36 lelong&0xf0000000 0x80000000 MIPS64 rel2
+#>>>>36 lelong&0xf0000000 0x00000000 MIPS-I
+#>>>>36 lelong&0xf0000000 0x10000000 MIPS-II
+#>>>>36 lelong&0xf0000000 0x20000000 MIPS-III
+#>>>>36 lelong&0xf0000000 0x30000000 MIPS-IV
+#>>>>36 lelong&0xf0000000 0x40000000 MIPS-V
+#>>>>36 lelong&0xf0000000 0x50000000 MIPS32
+#>>>>36 lelong&0xf0000000 0x60000000 MIPS64
+#>>>>36 lelong&0xf0000000 0x70000000 MIPS32 rel2
+#>>>>36 lelong&0xf0000000 0x80000000 MIPS64 rel2
# only for 64-bit
>>>4 byte 2
->>>>48 lelong&0xf0000000 0x00000000 MIPS-I
->>>>48 lelong&0xf0000000 0x10000000 MIPS-II
->>>>48 lelong&0xf0000000 0x20000000 MIPS-III
->>>>48 lelong&0xf0000000 0x30000000 MIPS-IV
->>>>48 lelong&0xf0000000 0x40000000 MIPS-V
->>>>48 lelong&0xf0000000 0x50000000 MIPS32
->>>>48 lelong&0xf0000000 0x60000000 MIPS64
->>>>48 lelong&0xf0000000 0x70000000 MIPS32 rel2
->>>>48 lelong&0xf0000000 0x80000000 MIPS64 rel2
+#>>>>48 lelong&0xf0000000 0x00000000 MIPS-I
+#>>>>48 lelong&0xf0000000 0x10000000 MIPS-II
+#>>>>48 lelong&0xf0000000 0x20000000 MIPS-III
+#>>>>48 lelong&0xf0000000 0x30000000 MIPS-IV
+#>>>>48 lelong&0xf0000000 0x40000000 MIPS-V
+#>>>>48 lelong&0xf0000000 0x50000000 MIPS32
+#>>>>48 lelong&0xf0000000 0x60000000 MIPS64
+#>>>>48 lelong&0xf0000000 0x70000000 MIPS32 rel2
+#>>>>48 lelong&0xf0000000 0x80000000 MIPS64 rel2
>>18 leshort 9 Amdahl - invalid byte order,
>>18 leshort 10 MIPS (deprecated),
>>18 leshort 11 RS6000 - invalid byte order,
@@ -181,26 +181,26 @@
>>18 beshort 8
# only for 32-bit
>>>4 byte 1
->>>>36 belong&0xf0000000 0x00000000 MIPS-I
->>>>36 belong&0xf0000000 0x10000000 MIPS-II
->>>>36 belong&0xf0000000 0x20000000 MIPS-III
->>>>36 belong&0xf0000000 0x30000000 MIPS-IV
->>>>36 belong&0xf0000000 0x40000000 MIPS-V
->>>>36 belong&0xf0000000 0x50000000 MIPS32
->>>>36 belong&0xf0000000 0x60000000 MIPS64
->>>>36 belong&0xf0000000 0x70000000 MIPS32 rel2
->>>>36 belong&0xf0000000 0x80000000 MIPS64 rel2
+#>>>>36 belong&0xf0000000 0x00000000 MIPS-I
+#>>>>36 belong&0xf0000000 0x10000000 MIPS-II
+#>>>>36 belong&0xf0000000 0x20000000 MIPS-III
+#>>>>36 belong&0xf0000000 0x30000000 MIPS-IV
+#>>>>36 belong&0xf0000000 0x40000000 MIPS-V
+#>>>>36 belong&0xf0000000 0x50000000 MIPS32
+#>>>>36 belong&0xf0000000 0x60000000 MIPS64
+#>>>>36 belong&0xf0000000 0x70000000 MIPS32 rel2
+#>>>>36 belong&0xf0000000 0x80000000 MIPS64 rel2
# only for 64-bit
>>>4 byte 2
->>>>48 belong&0xf0000000 0x00000000 MIPS-I
->>>>48 belong&0xf0000000 0x10000000 MIPS-II
->>>>48 belong&0xf0000000 0x20000000 MIPS-III
->>>>48 belong&0xf0000000 0x30000000 MIPS-IV
->>>>48 belong&0xf0000000 0x40000000 MIPS-V
->>>>48 belong&0xf0000000 0x50000000 MIPS32
->>>>48 belong&0xf0000000 0x60000000 MIPS64
->>>>48 belong&0xf0000000 0x70000000 MIPS32 rel2
->>>>48 belong&0xf0000000 0x80000000 MIPS64 rel2
+#>>>>48 belong&0xf0000000 0x00000000 MIPS-I
+#>>>>48 belong&0xf0000000 0x10000000 MIPS-II
+#>>>>48 belong&0xf0000000 0x20000000 MIPS-III
+#>>>>48 belong&0xf0000000 0x30000000 MIPS-IV
+#>>>>48 belong&0xf0000000 0x40000000 MIPS-V
+#>>>>48 belong&0xf0000000 0x50000000 MIPS32
+#>>>>48 belong&0xf0000000 0x60000000 MIPS64
+#>>>>48 belong&0xf0000000 0x70000000 MIPS32 rel2
+#>>>>48 belong&0xf0000000 0x80000000 MIPS64 rel2
>>18 beshort 9 Amdahl,
>>18 beshort 10 MIPS (deprecated),
>>18 beshort 11 RS6000,

View File

@ -1,22 +1,32 @@
---
magic/Magdir/archive | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
--- magic/Magdir/archive --- magic/Magdir/archive
+++ magic/Magdir/archive 2013-09-30 00:00:00.000000000 +0000 +++ magic/Magdir/archive 2016-04-18 11:37:48.369637727 +0000
@@ -589,6 +589,19 @@ @@ -776,6 +776,25 @@
# Zip archives (Greg Roelofs, c/o zip-bugs@wkuvx1.wku.edu) !:mime application/zip
0 string PK\005\006 Zip archive data (empty) !:ext zip/cbz
0 string PK\003\004 0 string PK\003\004
+>30 ubelong !0x6d696d65 +>30 ubelong !0x6d696d65
+>>4 byte 0x00 Zip archive data +>>4 byte 0x00 Zip archive data
+!:mime application/zip +!:mime application/zip
+!:ext zip/cbz
+>>4 byte 0x09 Zip archive data, at least v0.9 to extract +>>4 byte 0x09 Zip archive data, at least v0.9 to extract
+!:mime application/zip +!:mime application/zip
+!:ext zip/cbz
+>>4 byte 0x0a Zip archive data, at least v1.0 to extract +>>4 byte 0x0a Zip archive data, at least v1.0 to extract
+!:mime application/zip +!:mime application/zip
+!:ext zip/cbz
+>>4 byte 0x0b Zip archive data, at least v1.1 to extract +>>4 byte 0x0b Zip archive data, at least v1.1 to extract
+!:mime application/zip +!:mime application/zip
+!:ext zip/cbz
+>>0x161 string WINZIP Zip archive data, WinZIP self-extracting +>>0x161 string WINZIP Zip archive data, WinZIP self-extracting
+!:mime application/zip +!:mime application/zip
+!:ext zip/cbz
+>>4 byte 0x14 Zip archive data, at least v2.0 to extract +>>4 byte 0x14 Zip archive data, at least v2.0 to extract
+!:mime application/zip +!:mime application/zip
+!:ext zip/cbz
# Specialised zip formats which start with a member named 'mimetype' # Specialised zip formats which start with a member named 'mimetype'
# (stored uncompressed, with no 'extra field') containing the file's MIME type. # (stored uncompressed, with no 'extra field') containing the file's MIME type.

View File

@ -8,14 +8,12 @@ fixed build warning:
[ 205s] /usr/share/misc/magic, 5352: Warning: type `clear x' invalid [ 205s] /usr/share/misc/magic, 5352: Warning: type `clear x' invalid
--- ---
magic/Magdir/elf | 1 - file-5.28/magic/Magdir/elf | 1 -
1 file changed, 1 deletion(-) 1 file changed, 1 deletion(-)
Index: file-5.15/magic/Magdir/elf --- file-5.28/magic/Magdir/elf
=================================================================== +++ file-5.28/magic/Magdir/elf 2016-08-16 11:50:06.748513191 +0000
--- file-5.15.orig/magic/Magdir/elf 2013-09-29 01:42:19.000000000 +0100 @@ -56,7 +56,6 @@
+++ file-5.15/magic/Magdir/elf 2013-09-29 01:43:25.000000000 +0100
@@ -30,7 +30,6 @@
#>>>(0x38+0xcc) string >\0 of '%s' #>>>(0x38+0xcc) string >\0 of '%s'
#>>>(0x38+0x10) lelong >0 (signal %d), #>>>(0x38+0x10) lelong >0 (signal %d),
>16 leshort &0xff00 processor-specific, >16 leshort &0xff00 processor-specific,

View File

@ -1,6 +1,13 @@
---
src/apprentice.c | 6 +++---
src/compress.c | 2 +-
src/file.c | 2 +-
src/magic.c | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
--- src/apprentice.c --- src/apprentice.c
+++ src/apprentice.c 2013-09-30 00:00:00.000000000 +0000 +++ src/apprentice.c 2016-08-16 11:47:57.766941986 +0000
@@ -944,7 +944,7 @@ load_1(struct magic_set *ms, int action, @@ -1106,7 +1106,7 @@ load_1(struct magic_set *ms, int action,
ssize_t len; ssize_t len;
struct magic_entry me; struct magic_entry me;
@ -9,7 +16,7 @@
if (f == NULL) { if (f == NULL) {
if (errno != ENOENT) if (errno != ENOENT)
file_error(ms, errno, "cannot read magic file `%s'", file_error(ms, errno, "cannot read magic file `%s'",
@@ -2605,7 +2605,7 @@ apprentice_map(struct magic_set *ms, con @@ -2950,7 +2950,7 @@ apprentice_map(struct magic_set *ms, con
if (dbname == NULL) if (dbname == NULL)
goto error; goto error;
@ -18,7 +25,7 @@
goto error; goto error;
if (fstat(fd, &st) == -1) { if (fstat(fd, &st) == -1) {
@@ -2717,7 +2717,7 @@ apprentice_compile(struct magic_set *ms, @@ -3085,7 +3085,7 @@ apprentice_compile(struct magic_set *ms,
if (dbname == NULL) if (dbname == NULL)
goto out; goto out;
@ -28,8 +35,8 @@
file_error(ms, errno, "cannot open `%s'", dbname); file_error(ms, errno, "cannot open `%s'", dbname);
goto out; goto out;
--- src/compress.c --- src/compress.c
+++ src/compress.c 2013-09-30 00:00:00.000000000 +0000 +++ src/compress.c 2016-08-16 11:47:57.766941986 +0000
@@ -250,7 +250,7 @@ file_pipe2file(struct magic_set *ms, int @@ -389,7 +389,7 @@ file_pipe2file(struct magic_set *ms, int
#else #else
{ {
int te; int te;
@ -39,8 +46,8 @@
(void)unlink(buf); (void)unlink(buf);
errno = te; errno = te;
--- src/file.c --- src/file.c
+++ src/file.c 2013-09-30 00:00:00.000000000 +0000 +++ src/file.c 2016-08-16 11:47:57.766941986 +0000
@@ -390,7 +390,7 @@ unwrap(struct magic_set *ms, const char @@ -467,7 +467,7 @@ unwrap(struct magic_set *ms, const char
f = stdin; f = stdin;
wid = 1; wid = 1;
} else { } else {
@ -50,8 +57,8 @@
progname, fn, strerror(errno)); progname, fn, strerror(errno));
return 1; return 1;
--- src/magic.c --- src/magic.c
+++ src/magic.c 2013-12-02 10:36:33.334786103 +0000 +++ src/magic.c 2016-08-16 11:47:57.766941986 +0000
@@ -372,7 +372,7 @@ file_or_fd(struct magic_set *ms, const c @@ -442,7 +442,7 @@ file_or_fd(struct magic_set *ms, const c
else else
pos = lseek(fd, (off_t)0, SEEK_CUR); pos = lseek(fd, (off_t)0, SEEK_CUR);
} else { } else {

View File

@ -1,6 +1,10 @@
---
src/file.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
--- src/file.c --- src/file.c
+++ src/file.c 2014-02-18 08:50:59.990452075 +0000 +++ src/file.c 2016-06-01 10:13:21.169126906 +0000
@@ -198,6 +198,8 @@ main(int argc, char *argv[]) @@ -225,6 +225,8 @@ main(int argc, char *argv[])
flags |= MAGIC_ERROR; flags |= MAGIC_ERROR;
break; break;
case 'e': case 'e':
@ -9,7 +13,7 @@
for (i = 0; i < sizeof(nv) / sizeof(nv[0]); i++) for (i = 0; i < sizeof(nv) / sizeof(nv[0]); i++)
if (strcmp(nv[i].name, optarg) == 0) if (strcmp(nv[i].name, optarg) == 0)
break; break;
@@ -209,7 +211,7 @@ main(int argc, char *argv[]) @@ -236,7 +238,7 @@ main(int argc, char *argv[])
break; break;
case 'f': case 'f':
@ -18,7 +22,7 @@
usage(); usage();
if (magic == NULL) if (magic == NULL)
if ((magic = load(magicfile, flags)) == NULL) if ((magic = load(magicfile, flags)) == NULL)
@@ -218,6 +220,8 @@ main(int argc, char *argv[]) @@ -246,6 +248,8 @@ main(int argc, char *argv[])
++didsomefiles; ++didsomefiles;
break; break;
case 'F': case 'F':
@ -27,7 +31,7 @@
separator = optarg; separator = optarg;
break; break;
case 'i': case 'i':
@@ -230,6 +234,8 @@ main(int argc, char *argv[]) @@ -258,6 +262,8 @@ main(int argc, char *argv[])
action = FILE_LIST; action = FILE_LIST;
break; break;
case 'm': case 'm':

View File

@ -1,6 +1,10 @@
---
magic/Magdir/images | 2 ++
1 file changed, 2 insertions(+)
--- magic/Magdir/images --- magic/Magdir/images
+++ magic/Magdir/images 2014-06-24 16:36:26.658235329 +0000 +++ magic/Magdir/images 2016-08-16 11:46:27.356644029 +0000
@@ -655,6 +655,8 @@ @@ -996,6 +996,8 @@
# http://web.archive.org/web/20050317223257/www.cs.ubc.ca/spider/ladic/text/biorad.txt # http://web.archive.org/web/20050317223257/www.cs.ubc.ca/spider/ladic/text/biorad.txt
# Samples: http://www.loci.wisc.edu/software/sample-data # Samples: http://www.loci.wisc.edu/software/sample-data
14 leshort <2 14 leshort <2

View File

@ -1,6 +1,10 @@
---
src/apprentice.c | 8 ++++++++
1 file changed, 8 insertions(+)
--- src/apprentice.c --- src/apprentice.c
+++ src/apprentice.c 2014-06-24 16:33:48.770235732 +0000 +++ src/apprentice.c 2016-04-18 11:33:37.966264194 +0000
@@ -2173,8 +2173,16 @@ check_format_type(const char *ptr, int t @@ -2350,8 +2350,16 @@ check_format_type(const char *ptr, int t
} }
} else } else
h = 0; h = 0;
@ -16,4 +20,4 @@
+ ptr++; + ptr++;
if (*ptr == '.') if (*ptr == '.')
ptr++; ptr++;
while (isdigit((unsigned char)*ptr)) ptr++; #define CHECKLEN() do { \

View File

@ -1,13 +1,18 @@
---
magic/Magdir/archive | 5 +++++
1 file changed, 5 insertions(+)
--- magic/Magdir/archive --- magic/Magdir/archive
+++ magic/Magdir/archive 2014-06-25 08:56:37.758234870 +0000 +++ magic/Magdir/archive 2016-04-18 11:39:51.791354756 +0000
@@ -586,6 +586,10 @@ @@ -770,6 +770,11 @@
# PKZIP multi-volume archive
0 string PK\x07\x08PK\x03\x04 Zip multi-volume archive data, at least PKZIP v2.50 to extract 0 string PK\x07\x08PK\x03\x04 Zip multi-volume archive data, at least PKZIP v2.50 to extract
!:mime application/zip !:mime application/zip
!:ext zip/cbz
+>30 ubelong 0x6d696d65 Zip archive data, at least v2.0 to extract +>30 ubelong 0x6d696d65 Zip archive data, at least v2.0 to extract
+>>34 ubelong 0x74797065 \b, mime type +>>34 ubelong 0x74797065 \b, mime type
+>>>38 regex application/[a-z+-]+ \b %s +>>>38 regex application/[a-z+-]+ \b %s
+!:mime application/unknown+zip +!:mime application/unknown+zip
+!:ext zip/cbz
# Zip archives (Greg Roelofs, c/o zip-bugs@wkuvx1.wku.edu) # Zip archives (Greg Roelofs, c/o zip-bugs@wkuvx1.wku.edu)
0 string PK\005\006 Zip archive data (empty) 0 string PK\005\006 Zip archive data (empty)

View File

@ -3,8 +3,8 @@
1 file changed, 4 insertions(+), 2 deletions(-) 1 file changed, 4 insertions(+), 2 deletions(-)
--- src/readelf.c --- src/readelf.c
+++ src/readelf.c 2015-01-19 10:25:08.749519408 +0000 +++ src/readelf.c 2016-04-18 11:25:34.395199288 +0000
@@ -706,7 +706,7 @@ do_core_note(struct magic_set *ms, unsig @@ -728,7 +728,7 @@ do_core_note(struct magic_set *ms, unsig
default: default:
if (type == NT_PRPSINFO && *flags & FLAGS_IS_CORE) { if (type == NT_PRPSINFO && *flags & FLAGS_IS_CORE) {
@ -13,7 +13,7 @@
unsigned char c; unsigned char c;
/* /*
* Extract the program name. We assume * Extract the program name. We assume
@@ -718,7 +718,9 @@ do_core_note(struct magic_set *ms, unsig @@ -740,7 +740,9 @@ do_core_note(struct magic_set *ms, unsig
* If the characters aren't all printable, * If the characters aren't all printable,
* reject it. * reject it.
*/ */

View File

@ -4,7 +4,7 @@
2 files changed, 10 insertions(+), 114 deletions(-) 2 files changed, 10 insertions(+), 114 deletions(-)
--- src/apprentice.c --- src/apprentice.c
+++ src/apprentice.c 2014-10-13 11:02:16.000000000 +0000 +++ src/apprentice.c 2016-08-16 11:48:47.694001873 +0000
@@ -54,6 +54,7 @@ FILE_RCSID("@(#)$File: apprentice.c,v 1. @@ -54,6 +54,7 @@ FILE_RCSID("@(#)$File: apprentice.c,v 1.
#if defined(HAVE_LIMITS_H) #if defined(HAVE_LIMITS_H)
#include <limits.h> #include <limits.h>
@ -28,7 +28,7 @@
private char *mkdbname(struct magic_set *, const char *, int); private char *mkdbname(struct magic_set *, const char *, int);
private struct magic_map *apprentice_buf(struct magic_set *, struct magic *, private struct magic_map *apprentice_buf(struct magic_set *, struct magic *,
size_t); size_t);
@@ -3119,67 +3122,6 @@ byteswap(struct magic *magic, uint32_t n @@ -3176,67 +3179,6 @@ byteswap(struct magic *magic, uint32_t n
} }
/* /*
@ -97,8 +97,8 @@
*/ */
private void private void
--- src/cdf.c --- src/cdf.c
+++ src/cdf.c 2015-06-11 15:12:51.017518448 +0000 +++ src/cdf.c 2016-08-16 11:48:47.694001873 +0000
@@ -50,6 +50,7 @@ FILE_RCSID("@(#)$File: cdf.c,v 1.76 2015 @@ -50,6 +50,7 @@ FILE_RCSID("@(#)$File: cdf.c,v 1.82 2016
#ifdef HAVE_LIMITS_H #ifdef HAVE_LIMITS_H
#include <limits.h> #include <limits.h>
#endif #endif

View File

@ -4,13 +4,13 @@
2 files changed, 10 insertions(+), 2 deletions(-) 2 files changed, 10 insertions(+), 2 deletions(-)
--- src/file.c --- src/file.c
+++ src/file.c 2015-07-14 11:45:26.449520700 +0000 +++ src/file.c 2016-08-16 11:49:23.481327975 +0000
@@ -96,10 +96,12 @@ private const struct option long_options @@ -96,10 +96,12 @@ private const struct option long_options
#define OPT_MIME_ENCODING 5 #define OPT_MIME_ENCODING 5
#define OPT(shortname, longname, opt, doc) \ #define OPT(shortname, longname, opt, def, doc) \
{longname, opt, NULL, shortname}, {longname, opt, NULL, shortname},
+#define OPT_POSIX OPT +#define OPT_POSIX OPT
#define OPT_LONGONLY(longname, opt, doc, id) \ #define OPT_LONGONLY(longname, opt, def, doc, id) \
{longname, opt, NULL, id}, {longname, opt, NULL, id},
#include "file_opts.h" #include "file_opts.h"
#undef OPT #undef OPT
@ -18,7 +18,7 @@
#undef OPT_LONGONLY #undef OPT_LONGONLY
{0, 0, NULL, 0} {0, 0, NULL, 0}
}; };
@@ -595,6 +597,7 @@ docprint(const char *opts) @@ -617,6 +619,7 @@ docprint(const char *opts, int def)
private void private void
help(void) help(void)
{ {
@ -26,17 +26,17 @@
(void)fputs( (void)fputs(
"Usage: file [OPTION...] [FILE...]\n" "Usage: file [OPTION...] [FILE...]\n"
"Determine type of FILEs.\n" "Determine type of FILEs.\n"
@@ -602,11 +605,16 @@ help(void) @@ -624,11 +627,16 @@ help(void)
#define OPT(shortname, longname, opt, doc) \ #define OPT(shortname, longname, opt, def, doc) \
fprintf(stdout, " -%c, --" longname, shortname), \ fprintf(stdout, " -%c, --" longname, shortname), \
docprint(doc); docprint(doc, def);
+#define OPT_POSIX(shortname, longname, opt, doc) \ +#define OPT_POSIX(shortname, longname, opt, def, doc) \
+ fprintf(stdout, " -%c, --" longname "%s", shortname, \ + fprintf(stdout, " -%c, --" longname "%s", shortname, \
+ (shortname == 'L') ? (posix ? " (default)" : "") : (posix ? "" : " (default)")), \ + (shortname == 'L') ? (posix ? " (default)" : "") : (posix ? "" : " (default)")), \
+ docprint(doc); + docprint(doc, def);
#define OPT_LONGONLY(longname, opt, doc, id) \ #define OPT_LONGONLY(longname, opt, def, doc, id) \
fprintf(stdout, " --" longname), \ fprintf(stdout, " --" longname), \
docprint(doc); docprint(doc, def);
#include "file_opts.h" #include "file_opts.h"
#undef OPT #undef OPT
+#undef OPT_POSIX +#undef OPT_POSIX
@ -44,15 +44,15 @@
fprintf(stdout, "\nReport bugs to http://bugs.gw.com/\n"); fprintf(stdout, "\nReport bugs to http://bugs.gw.com/\n");
exit(0); exit(0);
--- src/file_opts.h --- src/file_opts.h
+++ src/file_opts.h 2013-09-30 13:44:17.000000000 +0000 +++ src/file_opts.h 2016-08-16 11:49:23.481327975 +0000
@@ -36,8 +36,8 @@ OPT_LONGONLY("mime-encoding", 0, " @@ -36,8 +36,8 @@ OPT_LONGONLY("mime-encoding", 0, 0, "
OPT('k', "keep-going", 0, " don't stop at the first match\n") OPT('k', "keep-going", 0, 0, " don't stop at the first match\n")
OPT('l', "list", 0, " list magic strength\n") OPT('l', "list", 0, 0, " list magic strength\n")
#ifdef S_IFLNK #ifdef S_IFLNK
-OPT('L', "dereference", 0, " follow symlinks (default)\n") -OPT('L', "dereference", 0, 1, " follow symlinks")
-OPT('h', "no-dereference", 0, " don't follow symlinks\n") -OPT('h', "no-dereference", 0, 2, " don't follow symlinks")
+OPT_POSIX('L', "dereference", 0, " follow symlinks\n") +OPT_POSIX('L', "dereference", 0, 0, " follow symlinks")
+OPT_POSIX('h', "no-dereference", 0, " don't follow symlinks\n") +OPT_POSIX('h', "no-dereference", 0, 0, " don't follow symlinks")
#endif #endif
OPT('n', "no-buffer", 0, " do not buffer output\n") OPT('n', "no-buffer", 0, 0, " do not buffer output\n")
OPT('N', "no-pad", 0, " do not pad output\n") OPT('N', "no-pad", 0, 0, " do not pad output\n")

View File

@ -1,68 +0,0 @@
From f0adf3e6811aafde00dba8ba236609869a973769 Mon Sep 17 00:00:00 2001
From: Christos Zoulas <christos@zoulas.com>
Date: Thu, 29 Oct 2015 19:23:42 +0000
Subject: [PATCH] PR/489: Avoid evaluating things twice.
---
python/magic.py | 35 +++++++++++++++++++----------------
1 file changed, 19 insertions(+), 16 deletions(-)
diff --git a/python/magic.py b/python/magic.py
index a17e8da..2c1c012 100644
--- a/python/magic.py
+++ b/python/magic.py
@@ -118,14 +118,15 @@ def file(self, filename):
as a filename or None if an error occurred and the MAGIC_ERROR flag
is set. A call to errno() will return the numeric error code.
"""
- try: # attempt python3 approach first
- if isinstance(filename, bytes):
- bi = filename
- else:
- bi = bytes(filename, 'utf-8')
- return str(_file(self._magic_t, bi), 'utf-8')
- except:
- return _file(self._magic_t, filename.encode('utf-8'))
+ if isinstance(filename, bytes):
+ bi = filename
+ else:
+ bi = bytes(filename, 'utf-8')
+ r = _file(self._magic_t, bi)
+ if isinstance(r, str):
+ return r
+ else:
+ return str(r, 'utf-8')
def descriptor(self, fd):
"""
@@ -139,20 +140,22 @@ def buffer(self, buf):
as a buffer or None if an error occurred and the MAGIC_ERROR flag
is set. A call to errno() will return the numeric error code.
"""
- try: # attempt python3 approach first
- return str(_buffer(self._magic_t, buf, len(buf)), 'utf-8')
- except:
- return _buffer(self._magic_t, buf, len(buf))
+ r = _buffer(self._magic_t, buf, len(buf))
+ if isinstance(r, str):
+ return r
+ else:
+ return str(r, 'utf-8')
def error(self):
"""
Returns a textual explanation of the last error or None
if there was no error.
"""
- try: # attempt python3 approach first
- return str(_error(self._magic_t), 'utf-8')
- except:
- return _error(self._magic_t)
+ e = _error(self._magic_t)
+ if isinstance(e, str):
+ return e
+ else:
+ return str(e, 'utf-8')
def setflags(self, flags):
"""

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3735381563f69fb4239470b8c51b876a80425348b8285a7cded8b61d6b890eca
size 739485

41
file-5.28-compress.patch Normal file
View File

@ -0,0 +1,41 @@
-- Subject: Crash with file-5.28/libmagic and rpmbuild
| Hi,
|
| interesting crash with libmagic from file-5.28 used by rpmbuild or better
| its librpmbuild.so.3. See attached backtrace. It looks like strlcpy()
| runs on a NULL pointer as source. As well as it is not clrear why an
| ascii file like apefooter_8h__incl.md5 with a MD5 sum without line terminat=
| or
| does cause the libmagic to do an uncompress:
|
| file /home/abuild/rpmbuild/BUILDROOT/taglib-1.11-0.x86_64/usr/share/doc/pa=
| ckages/libtag-devel/html/apefooter_8h__incl.md5
| /home/abuild/rpmbuild/BUILDROOT/taglib-1.11-0.x86_64/usr/share/doc/package=
| s/libtag-devel/html/apefooter_8h__incl.md5: ASCII text, with no line termin=
| ators
|
It has been fixed on HEAD:
Best,
christos
Index: src/compress.c
===================================================================
RCS file: /p/file/cvsroot/file/src/compress.c,v
retrieving revision 1.97
retrieving revision 1.98
diff -u -r1.97 -r1.98
--- src/compress.c 13 May 2016 23:02:28 -0000 1.97
+++ src/compress.c 28 Jun 2016 16:38:26 -0000 1.98
@@ -517,7 +517,7 @@
return OKDATA;
err:
- strlcpy((char *)*newch, z.msg, bytes_max);
+ strlcpy((char *)*newch, z.msg ? z.msg : zError(rc), bytes_max);
*n = strlen((char *)*newch);
return ERRDATA;
}

View File

@ -10,7 +10,7 @@
8 files changed, 311 insertions(+), 66 deletions(-) 8 files changed, 311 insertions(+), 66 deletions(-)
--- magic/Magdir/elf --- magic/Magdir/elf
+++ magic/Magdir/elf 2013-09-30 00:00:00.000000000 +0000 +++ magic/Magdir/elf 2016-08-16 11:53:22.408828154 +0000
@@ -128,7 +128,7 @@ @@ -128,7 +128,7 @@
>18 leshort 47 Renesas H8/300H, >18 leshort 47 Renesas H8/300H,
>18 leshort 48 Renesas H8S, >18 leshort 48 Renesas H8S,
@ -21,7 +21,7 @@
>18 leshort 52 Motorola Coldfire, >18 leshort 52 Motorola Coldfire,
>18 leshort 53 Motorola M68HC12, >18 leshort 53 Motorola M68HC12,
--- magic/Magdir/linux --- magic/Magdir/linux
+++ magic/Magdir/linux 2013-12-02 11:09:39.000000000 +0000 +++ magic/Magdir/linux 2016-08-16 11:53:22.408828154 +0000
@@ -101,23 +101,27 @@ @@ -101,23 +101,27 @@
# and Nicolas Lichtmaier <nick@debian.org> # and Nicolas Lichtmaier <nick@debian.org>
# All known start with: b8 c0 07 8e d8 b8 00 90 8e c0 b9 00 01 29 f6 29 # All known start with: b8 c0 07 8e d8 b8 00 90 8e c0 b9 00 01 29 f6 29
@ -67,7 +67,7 @@
0 belong 0xb8c0078e Linux kernel 0 belong 0xb8c0078e Linux kernel
>0x1e3 string Loading version 1.3.79 or older >0x1e3 string Loading version 1.3.79 or older
--- magic/Magdir/msad --- magic/Magdir/msad
+++ magic/Magdir/msad 2013-09-30 00:00:00.000000000 +0000 +++ magic/Magdir/msad 2016-08-16 11:53:22.408828154 +0000
@@ -0,0 +1,5 @@ @@ -0,0 +1,5 @@
+#------------------------------------------------------------------------------ +#------------------------------------------------------------------------------
+# msad: file(1) magic for msad +# msad: file(1) magic for msad
@ -75,8 +75,8 @@
+# This must precede the heuristic for raw G3 data +# This must precede the heuristic for raw G3 data
+4 string Standard\ Jet\ DB Microsoft Access Database +4 string Standard\ Jet\ DB Microsoft Access Database
--- magic/Magdir/msdos --- magic/Magdir/msdos
+++ magic/Magdir/msdos 2013-09-30 00:00:00.000000000 +0000 +++ magic/Magdir/msdos 2016-08-16 11:53:22.408828154 +0000
@@ -100,9 +100,9 @@ @@ -104,9 +104,9 @@
>>>(0x3c.l+22) leshort&0x0200 >0 (stripped to external PDB) >>>(0x3c.l+22) leshort&0x0200 >0 (stripped to external PDB)
>>>(0x3c.l+22) leshort&0x1000 >0 system file >>>(0x3c.l+22) leshort&0x1000 >0 system file
>>>(0x3c.l+24) leshort 0x010b >>>(0x3c.l+24) leshort 0x010b
@ -89,7 +89,7 @@
# hooray, there's a DOS extender using the PE format, with a valid PE # 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) # executable inside (which just prints a message and exits if run in win)
--- magic/Makefile.am --- magic/Makefile.am
+++ magic/Makefile.am 2015-01-19 10:35:17.000000000 +0000 +++ magic/Makefile.am 2016-08-16 11:53:22.408828154 +0000
@@ -5,7 +5,7 @@ MAGIC_FRAGMENT_BASE = Magdir @@ -5,7 +5,7 @@ MAGIC_FRAGMENT_BASE = Magdir
MAGIC_DIR = $(top_srcdir)/magic MAGIC_DIR = $(top_srcdir)/magic
MAGIC_FRAGMENT_DIR = $(MAGIC_DIR)/$(MAGIC_FRAGMENT_BASE) MAGIC_FRAGMENT_DIR = $(MAGIC_DIR)/$(MAGIC_FRAGMENT_BASE)
@ -107,15 +107,15 @@
$(MAGIC_FRAGMENT_DIR)/applix \ $(MAGIC_FRAGMENT_DIR)/applix \
$(MAGIC_FRAGMENT_DIR)/archive \ $(MAGIC_FRAGMENT_DIR)/archive \
$(MAGIC_FRAGMENT_DIR)/assembler \ $(MAGIC_FRAGMENT_DIR)/assembler \
@@ -77,7 +76,6 @@ $(MAGIC_FRAGMENT_DIR)/epoc \ @@ -82,7 +81,6 @@ $(MAGIC_FRAGMENT_DIR)/epoc \
$(MAGIC_FRAGMENT_DIR)/erlang \ $(MAGIC_FRAGMENT_DIR)/erlang \
$(MAGIC_FRAGMENT_DIR)/esri \ $(MAGIC_FRAGMENT_DIR)/esri \
$(MAGIC_FRAGMENT_DIR)/fcs \ $(MAGIC_FRAGMENT_DIR)/fcs \
-$(MAGIC_FRAGMENT_DIR)/filesystems \ -$(MAGIC_FRAGMENT_DIR)/filesystems \
$(MAGIC_FRAGMENT_DIR)/finger \
$(MAGIC_FRAGMENT_DIR)/flash \ $(MAGIC_FRAGMENT_DIR)/flash \
$(MAGIC_FRAGMENT_DIR)/fonts \ $(MAGIC_FRAGMENT_DIR)/flif \
$(MAGIC_FRAGMENT_DIR)/fortran \ @@ -122,6 +120,8 @@ $(MAGIC_FRAGMENT_DIR)/isz \
@@ -115,6 +113,8 @@ $(MAGIC_FRAGMENT_DIR)/isz \
$(MAGIC_FRAGMENT_DIR)/java \ $(MAGIC_FRAGMENT_DIR)/java \
$(MAGIC_FRAGMENT_DIR)/javascript \ $(MAGIC_FRAGMENT_DIR)/javascript \
$(MAGIC_FRAGMENT_DIR)/jpeg \ $(MAGIC_FRAGMENT_DIR)/jpeg \
@ -124,7 +124,7 @@
$(MAGIC_FRAGMENT_DIR)/karma \ $(MAGIC_FRAGMENT_DIR)/karma \
$(MAGIC_FRAGMENT_DIR)/kde \ $(MAGIC_FRAGMENT_DIR)/kde \
$(MAGIC_FRAGMENT_DIR)/keepass \ $(MAGIC_FRAGMENT_DIR)/keepass \
@@ -123,7 +123,6 @@ $(MAGIC_FRAGMENT_DIR)/kml \ @@ -130,7 +130,6 @@ $(MAGIC_FRAGMENT_DIR)/kml \
$(MAGIC_FRAGMENT_DIR)/lecter \ $(MAGIC_FRAGMENT_DIR)/lecter \
$(MAGIC_FRAGMENT_DIR)/lex \ $(MAGIC_FRAGMENT_DIR)/lex \
$(MAGIC_FRAGMENT_DIR)/lif \ $(MAGIC_FRAGMENT_DIR)/lif \
@ -132,7 +132,7 @@
$(MAGIC_FRAGMENT_DIR)/lisp \ $(MAGIC_FRAGMENT_DIR)/lisp \
$(MAGIC_FRAGMENT_DIR)/llvm \ $(MAGIC_FRAGMENT_DIR)/llvm \
$(MAGIC_FRAGMENT_DIR)/lua \ $(MAGIC_FRAGMENT_DIR)/lua \
@@ -131,7 +130,6 @@ $(MAGIC_FRAGMENT_DIR)/luks \ @@ -138,7 +137,6 @@ $(MAGIC_FRAGMENT_DIR)/luks \
$(MAGIC_FRAGMENT_DIR)/m4 \ $(MAGIC_FRAGMENT_DIR)/m4 \
$(MAGIC_FRAGMENT_DIR)/mach \ $(MAGIC_FRAGMENT_DIR)/mach \
$(MAGIC_FRAGMENT_DIR)/macos \ $(MAGIC_FRAGMENT_DIR)/macos \
@ -140,7 +140,7 @@
$(MAGIC_FRAGMENT_DIR)/magic \ $(MAGIC_FRAGMENT_DIR)/magic \
$(MAGIC_FRAGMENT_DIR)/mail.news \ $(MAGIC_FRAGMENT_DIR)/mail.news \
$(MAGIC_FRAGMENT_DIR)/make \ $(MAGIC_FRAGMENT_DIR)/make \
@@ -152,10 +150,10 @@ $(MAGIC_FRAGMENT_DIR)/misctools \ @@ -160,10 +158,10 @@ $(MAGIC_FRAGMENT_DIR)/misctools \
$(MAGIC_FRAGMENT_DIR)/mkid \ $(MAGIC_FRAGMENT_DIR)/mkid \
$(MAGIC_FRAGMENT_DIR)/mlssa \ $(MAGIC_FRAGMENT_DIR)/mlssa \
$(MAGIC_FRAGMENT_DIR)/mmdf \ $(MAGIC_FRAGMENT_DIR)/mmdf \
@ -152,7 +152,7 @@
$(MAGIC_FRAGMENT_DIR)/msooxml \ $(MAGIC_FRAGMENT_DIR)/msooxml \
$(MAGIC_FRAGMENT_DIR)/msx \ $(MAGIC_FRAGMENT_DIR)/msx \
$(MAGIC_FRAGMENT_DIR)/msvc \ $(MAGIC_FRAGMENT_DIR)/msvc \
@@ -203,6 +201,8 @@ $(MAGIC_FRAGMENT_DIR)/python \ @@ -214,6 +212,8 @@ $(MAGIC_FRAGMENT_DIR)/python \
$(MAGIC_FRAGMENT_DIR)/qt \ $(MAGIC_FRAGMENT_DIR)/qt \
$(MAGIC_FRAGMENT_DIR)/revision \ $(MAGIC_FRAGMENT_DIR)/revision \
$(MAGIC_FRAGMENT_DIR)/riff \ $(MAGIC_FRAGMENT_DIR)/riff \
@ -161,7 +161,7 @@
$(MAGIC_FRAGMENT_DIR)/rpm \ $(MAGIC_FRAGMENT_DIR)/rpm \
$(MAGIC_FRAGMENT_DIR)/rtf \ $(MAGIC_FRAGMENT_DIR)/rtf \
$(MAGIC_FRAGMENT_DIR)/ruby \ $(MAGIC_FRAGMENT_DIR)/ruby \
@@ -272,8 +272,20 @@ $(MAGIC_FRAGMENT_DIR)/zfs \ @@ -285,8 +285,20 @@ $(MAGIC_FRAGMENT_DIR)/zfs \
$(MAGIC_FRAGMENT_DIR)/zilog \ $(MAGIC_FRAGMENT_DIR)/zilog \
$(MAGIC_FRAGMENT_DIR)/zyxel $(MAGIC_FRAGMENT_DIR)/zyxel
@ -183,7 +183,7 @@
# FIXME: Build file natively as well so that it can be used to compile # 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 # the target's magic file; for now we bail if the local version does not match
@@ -285,19 +297,22 @@ FILE_COMPILE = $(top_builddir)/src/file$ @@ -298,19 +310,22 @@ FILE_COMPILE = $(top_builddir)/src/file$
FILE_COMPILE_DEP = $(FILE_COMPILE) FILE_COMPILE_DEP = $(FILE_COMPILE)
endif endif
@ -193,7 +193,7 @@
- @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \ - @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \
- echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \ - echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \
- else \ - else \
- v=$$(file --version | sed -e s/file-// -e q); \ - v=$$(${FILE_COMPILE} --version | sed -e s/file-// -e q); \
- if [ "$$v" != "${PACKAGE_VERSION}" ]; then \ - if [ "$$v" != "${PACKAGE_VERSION}" ]; then \
- echo "Cannot use the installed version of file ($$v) to"; \ - echo "Cannot use the installed version of file ($$v) to"; \
- echo "cross-compile file ${PACKAGE_VERSION}"; \ - echo "cross-compile file ${PACKAGE_VERSION}"; \
@ -212,7 +212,7 @@
+# @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \ +# @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \
+# echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \ +# echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \
+# else \ +# else \
+# v=$$(file --version | sed -e s/file-// -e q); \ +# v=$$(${FILE_COMPILE} --version | sed -e s/file-// -e q); \
+# if [ "$$v" != "${PACKAGE_VERSION}" ]; then \ +# if [ "$$v" != "${PACKAGE_VERSION}" ]; then \
+# echo "Cannot use the installed version of file ($$v) to"; \ +# echo "Cannot use the installed version of file ($$v) to"; \
+# echo "cross-compile file ${PACKAGE_VERSION}"; \ +# echo "cross-compile file ${PACKAGE_VERSION}"; \
@ -223,7 +223,7 @@
+# $(FILE_COMPILE) -C -m magic +# $(FILE_COMPILE) -C -m magic
+# @rm -fr magic +# @rm -fr magic
--- magic/Makefile.in --- magic/Makefile.in
+++ magic/Makefile.in 2015-06-11 15:26:03.753518322 +0000 +++ magic/Makefile.in 2016-08-16 11:53:22.408828154 +0000
@@ -278,7 +278,7 @@ top_srcdir = @top_srcdir@ @@ -278,7 +278,7 @@ top_srcdir = @top_srcdir@
MAGIC_FRAGMENT_BASE = Magdir MAGIC_FRAGMENT_BASE = Magdir
MAGIC_DIR = $(top_srcdir)/magic MAGIC_DIR = $(top_srcdir)/magic
@ -241,15 +241,15 @@
$(MAGIC_FRAGMENT_DIR)/applix \ $(MAGIC_FRAGMENT_DIR)/applix \
$(MAGIC_FRAGMENT_DIR)/archive \ $(MAGIC_FRAGMENT_DIR)/archive \
$(MAGIC_FRAGMENT_DIR)/assembler \ $(MAGIC_FRAGMENT_DIR)/assembler \
@@ -349,7 +348,6 @@ $(MAGIC_FRAGMENT_DIR)/epoc \ @@ -354,7 +353,6 @@ $(MAGIC_FRAGMENT_DIR)/epoc \
$(MAGIC_FRAGMENT_DIR)/erlang \ $(MAGIC_FRAGMENT_DIR)/erlang \
$(MAGIC_FRAGMENT_DIR)/esri \ $(MAGIC_FRAGMENT_DIR)/esri \
$(MAGIC_FRAGMENT_DIR)/fcs \ $(MAGIC_FRAGMENT_DIR)/fcs \
-$(MAGIC_FRAGMENT_DIR)/filesystems \ -$(MAGIC_FRAGMENT_DIR)/filesystems \
$(MAGIC_FRAGMENT_DIR)/finger \
$(MAGIC_FRAGMENT_DIR)/flash \ $(MAGIC_FRAGMENT_DIR)/flash \
$(MAGIC_FRAGMENT_DIR)/fonts \ $(MAGIC_FRAGMENT_DIR)/flif \
$(MAGIC_FRAGMENT_DIR)/fortran \ @@ -394,6 +392,8 @@ $(MAGIC_FRAGMENT_DIR)/isz \
@@ -387,6 +385,8 @@ $(MAGIC_FRAGMENT_DIR)/isz \
$(MAGIC_FRAGMENT_DIR)/java \ $(MAGIC_FRAGMENT_DIR)/java \
$(MAGIC_FRAGMENT_DIR)/javascript \ $(MAGIC_FRAGMENT_DIR)/javascript \
$(MAGIC_FRAGMENT_DIR)/jpeg \ $(MAGIC_FRAGMENT_DIR)/jpeg \
@ -258,7 +258,7 @@
$(MAGIC_FRAGMENT_DIR)/karma \ $(MAGIC_FRAGMENT_DIR)/karma \
$(MAGIC_FRAGMENT_DIR)/kde \ $(MAGIC_FRAGMENT_DIR)/kde \
$(MAGIC_FRAGMENT_DIR)/keepass \ $(MAGIC_FRAGMENT_DIR)/keepass \
@@ -395,7 +395,6 @@ $(MAGIC_FRAGMENT_DIR)/kml \ @@ -402,7 +402,6 @@ $(MAGIC_FRAGMENT_DIR)/kml \
$(MAGIC_FRAGMENT_DIR)/lecter \ $(MAGIC_FRAGMENT_DIR)/lecter \
$(MAGIC_FRAGMENT_DIR)/lex \ $(MAGIC_FRAGMENT_DIR)/lex \
$(MAGIC_FRAGMENT_DIR)/lif \ $(MAGIC_FRAGMENT_DIR)/lif \
@ -266,7 +266,7 @@
$(MAGIC_FRAGMENT_DIR)/lisp \ $(MAGIC_FRAGMENT_DIR)/lisp \
$(MAGIC_FRAGMENT_DIR)/llvm \ $(MAGIC_FRAGMENT_DIR)/llvm \
$(MAGIC_FRAGMENT_DIR)/lua \ $(MAGIC_FRAGMENT_DIR)/lua \
@@ -403,7 +402,6 @@ $(MAGIC_FRAGMENT_DIR)/luks \ @@ -410,7 +409,6 @@ $(MAGIC_FRAGMENT_DIR)/luks \
$(MAGIC_FRAGMENT_DIR)/m4 \ $(MAGIC_FRAGMENT_DIR)/m4 \
$(MAGIC_FRAGMENT_DIR)/mach \ $(MAGIC_FRAGMENT_DIR)/mach \
$(MAGIC_FRAGMENT_DIR)/macos \ $(MAGIC_FRAGMENT_DIR)/macos \
@ -274,7 +274,7 @@
$(MAGIC_FRAGMENT_DIR)/magic \ $(MAGIC_FRAGMENT_DIR)/magic \
$(MAGIC_FRAGMENT_DIR)/mail.news \ $(MAGIC_FRAGMENT_DIR)/mail.news \
$(MAGIC_FRAGMENT_DIR)/make \ $(MAGIC_FRAGMENT_DIR)/make \
@@ -424,10 +422,10 @@ $(MAGIC_FRAGMENT_DIR)/misctools \ @@ -432,10 +430,10 @@ $(MAGIC_FRAGMENT_DIR)/misctools \
$(MAGIC_FRAGMENT_DIR)/mkid \ $(MAGIC_FRAGMENT_DIR)/mkid \
$(MAGIC_FRAGMENT_DIR)/mlssa \ $(MAGIC_FRAGMENT_DIR)/mlssa \
$(MAGIC_FRAGMENT_DIR)/mmdf \ $(MAGIC_FRAGMENT_DIR)/mmdf \
@ -286,7 +286,7 @@
$(MAGIC_FRAGMENT_DIR)/msooxml \ $(MAGIC_FRAGMENT_DIR)/msooxml \
$(MAGIC_FRAGMENT_DIR)/msx \ $(MAGIC_FRAGMENT_DIR)/msx \
$(MAGIC_FRAGMENT_DIR)/msvc \ $(MAGIC_FRAGMENT_DIR)/msvc \
@@ -475,6 +473,8 @@ $(MAGIC_FRAGMENT_DIR)/python \ @@ -486,6 +484,8 @@ $(MAGIC_FRAGMENT_DIR)/python \
$(MAGIC_FRAGMENT_DIR)/qt \ $(MAGIC_FRAGMENT_DIR)/qt \
$(MAGIC_FRAGMENT_DIR)/revision \ $(MAGIC_FRAGMENT_DIR)/revision \
$(MAGIC_FRAGMENT_DIR)/riff \ $(MAGIC_FRAGMENT_DIR)/riff \
@ -295,7 +295,7 @@
$(MAGIC_FRAGMENT_DIR)/rpm \ $(MAGIC_FRAGMENT_DIR)/rpm \
$(MAGIC_FRAGMENT_DIR)/rtf \ $(MAGIC_FRAGMENT_DIR)/rtf \
$(MAGIC_FRAGMENT_DIR)/ruby \ $(MAGIC_FRAGMENT_DIR)/ruby \
@@ -544,10 +544,22 @@ $(MAGIC_FRAGMENT_DIR)/zfs \ @@ -557,10 +557,22 @@ $(MAGIC_FRAGMENT_DIR)/zfs \
$(MAGIC_FRAGMENT_DIR)/zilog \ $(MAGIC_FRAGMENT_DIR)/zilog \
$(MAGIC_FRAGMENT_DIR)/zyxel $(MAGIC_FRAGMENT_DIR)/zyxel
@ -319,7 +319,7 @@
# FIXME: Build file natively as well so that it can be used to compile # 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 # the target's magic file; for now we bail if the local version does not match
@IS_CROSS_COMPILE_TRUE@FILE_COMPILE = file${EXEEXT} @IS_CROSS_COMPILE_TRUE@FILE_COMPILE = file${EXEEXT}
@@ -769,23 +781,25 @@ uninstall-am: uninstall-pkgdataDATA @@ -782,23 +794,25 @@ uninstall-am: uninstall-pkgdataDATA
.PRECIOUS: Makefile .PRECIOUS: Makefile
@ -332,7 +332,7 @@
- @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \ - @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \
- echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \ - echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \
- else \ - else \
- v=$$(file --version | sed -e s/file-// -e q); \ - v=$$(${FILE_COMPILE} --version | sed -e s/file-// -e q); \
- if [ "$$v" != "${PACKAGE_VERSION}" ]; then \ - if [ "$$v" != "${PACKAGE_VERSION}" ]; then \
- echo "Cannot use the installed version of file ($$v) to"; \ - echo "Cannot use the installed version of file ($$v) to"; \
- echo "cross-compile file ${PACKAGE_VERSION}"; \ - echo "cross-compile file ${PACKAGE_VERSION}"; \
@ -348,7 +348,7 @@
+# @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \ +# @(if expr "${FILE_COMPILE}" : '.*/.*' > /dev/null; then \
+# echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \ +# echo "Using ${FILE_COMPILE} to generate ${MAGIC}" > /dev/null; \
+# else \ +# else \
+# v=$$(file --version | sed -e s/file-// -e q); \ +# v=$$(${FILE_COMPILE} --version | sed -e s/file-// -e q); \
+# if [ "$$v" != "${PACKAGE_VERSION}" ]; then \ +# if [ "$$v" != "${PACKAGE_VERSION}" ]; then \
+# echo "Cannot use the installed version of file ($$v) to"; \ +# echo "Cannot use the installed version of file ($$v) to"; \
+# echo "cross-compile file ${PACKAGE_VERSION}"; \ +# echo "cross-compile file ${PACKAGE_VERSION}"; \
@ -362,15 +362,15 @@
# Tell versions [3.59,3.63) of GNU make to not export all variables. # 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. # Otherwise a system limit (for SysV at least) may be exceeded.
--- src/Makefile.am --- src/Makefile.am
+++ src/Makefile.am 2013-09-30 00:00:00.000000000 +0000 +++ src/Makefile.am 2016-08-16 11:54:33.947480617 +0000
@@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
-MAGIC = $(pkgdatadir)/magic -MAGIC = $(pkgdatadir)/magic
+MAGIC = $(sysconfdir)/magic:$(pkgdatadir)/magic +MAGIC = $(sysconfdir)/magic:$(pkgdatadir)/magic
lib_LTLIBRARIES = libmagic.la lib_LTLIBRARIES = libmagic.la
include_HEADERS = magic.h nodist_include_HEADERS = magic.h
--- src/dcore.c --- src/dcore.c
+++ src/dcore.c 2013-09-30 00:00:00.000000000 +0000 +++ src/dcore.c 2016-08-16 11:53:22.424827851 +0000
@@ -0,0 +1,207 @@ @@ -0,0 +1,207 @@
+/* +/*
+ * Show goo about ELF core files + * Show goo about ELF core files

3
file-5.28.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0ecb5e146b8655d1fa84159a847ee619fc102575205a0ff9c6cc60fc5ee2e012
size 777859

View File

@ -1,4 +1,4 @@
addFilter(".*Warning:.*using.*regular.*magic.*file.*/usr/share/misc/magic.*") addFilter(".*Warning:.*using.*regular.*magic.*file.*/usr/share/misc/magic.*")
addFilter(".*E:.*shlib-fixed-dependency.*") addFilter(".*W:.*no-dependency-on file.*/file-libs/libfile.*")
addFilter(".*W:.*no-dependency-on.*")
addFilter(".*W:.*name-repeated-in-summary.*") addFilter(".*W:.*name-repeated-in-summary.*")
addFilter(".*E:.*shlib-fixed-dependency.*")

View File

@ -1,13 +1,13 @@
--- ---
file-5.23/configure.ac | 2 ++ file-5.28/configure.ac | 2 ++
file-5.23/src/file.c | 2 +- file-5.28/src/file.c | 2 +-
file-5.23/src/file.h | 8 ++++++++ file-5.28/src/file.h | 8 ++++++++
file-5.23/src/magic.c | 10 +++++----- file-5.28/src/magic.c | 10 +++++-----
4 files changed, 16 insertions(+), 6 deletions(-) 4 files changed, 16 insertions(+), 6 deletions(-)
--- file-5.23/configure.ac --- file-5.28/configure.ac
+++ file-5.23/configure.ac 2015-06-11 15:17:36.393695978 +0000 +++ file-5.28/configure.ac 2016-08-16 11:51:12.795269362 +0000
@@ -90,6 +90,8 @@ AC_CHECK_TYPE([sig_t],[AC_DEFINE([HAVE_S @@ -97,6 +97,8 @@ AC_CHECK_TYPE([sig_t],[AC_DEFINE([HAVE_S
#include <signal.h> #include <signal.h>
#endif]) #endif])
@ -16,9 +16,9 @@
dnl Checks for typedefs, structures, and compiler characteristics. dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST AC_C_CONST
AC_TYPE_OFF_T AC_TYPE_OFF_T
--- file-5.23/src/file.c --- file-5.28/src/file.c
+++ file-5.23/src/file.c 2015-06-11 00:00:00.000000000 +0000 +++ file-5.28/src/file.c 2016-08-16 11:51:12.795269362 +0000
@@ -596,7 +596,7 @@ docprint(const char *opts) @@ -619,7 +619,7 @@ docprint(const char *opts, int def)
private void private void
help(void) help(void)
{ {
@ -27,9 +27,9 @@
(void)fputs( (void)fputs(
"Usage: file [OPTION...] [FILE...]\n" "Usage: file [OPTION...] [FILE...]\n"
"Determine type of FILEs.\n" "Determine type of FILEs.\n"
--- file-5.23/src/file.h --- file-5.28/src/file.h
+++ file-5.23/src/file.h 2015-06-11 15:18:48.037518208 +0000 +++ file-5.28/src/file.h 2016-08-16 11:51:12.795269362 +0000
@@ -602,4 +602,12 @@ static const char *rcsid(const char *p) @@ -615,4 +615,12 @@ static const char *rcsid(const char *p)
#define __RCSID(a) #define __RCSID(a)
#endif #endif
@ -42,9 +42,9 @@
+#endif +#endif
+ +
#endif /* __file_h__ */ #endif /* __file_h__ */
--- file-5.23/src/magic.c --- file-5.28/src/magic.c
+++ file-5.23/src/magic.c 2015-06-11 15:20:08.373518300 +0000 +++ file-5.28/src/magic.c 2016-08-16 11:51:12.795269362 +0000
@@ -177,7 +177,7 @@ get_default_magic(void) @@ -185,7 +185,7 @@ get_default_magic(void)
free(default_magic); free(default_magic);
default_magic = NULL; default_magic = NULL;
} }
@ -53,7 +53,7 @@
return MAGIC; return MAGIC;
if (asprintf(&hmagicpath, "%s/.magic.mgc", home) < 0) if (asprintf(&hmagicpath, "%s/.magic.mgc", home) < 0)
@@ -214,16 +214,16 @@ out: @@ -222,16 +222,16 @@ out:
} }
/* First, try to get a magic file from user-application data */ /* First, try to get a magic file from user-application data */
@ -73,7 +73,7 @@
_w32_append_path(&hmagicpath, "%s%s", home, hmagic); _w32_append_path(&hmagicpath, "%s%s", home, hmagic);
/* Fourth, try to get magic file relative to exe location */ /* Fourth, try to get magic file relative to exe location */
@@ -244,7 +244,7 @@ magic_getpath(const char *magicfile, int @@ -252,7 +252,7 @@ magic_getpath(const char *magicfile, int
if (magicfile != NULL) if (magicfile != NULL)
return magicfile; return magicfile;

View File

@ -1,3 +1,110 @@
-------------------------------------------------------------------
Thu Aug 18 12:24:36 UTC 2016 - werner@suse.de
- Add patch file-5.28-compress.patch
to fix crash as found in build system
-------------------------------------------------------------------
Tue Aug 16 11:59:36 UTC 2016 - werner@suse.de
- Update to file version 5.28
* fix leak on allocation failure
* PR/555: Avoid overflow for offset > nbytes
* PR/550: Segv on DER parsing:
- use the correct variable for length
- set offset to 0 on failure.
- Port patches to 5.28
file-4.24-autoconf.dif
file-5.15-clear-invalid.patch
file-5.16-ocloexec.patch
file-5.19-biorad.dif
file-5.23-endian.patch
file-5.24-nitpick.dif
file-secure_getenv.patch
- Remove patches now upstream
file-5.26-revert-close.patch
- Rename patches
file-5.26.dif becomes file-5.28.dif
-------------------------------------------------------------------
Wed Jun 1 10:17:08 UTC 2016 - werner@suse.de
- Update to file version 5.27
* Errors comparing DER entries or computing offsets
are just indications of malformed non-DER files.
Don't print them.
* Offset comparison was off-by-one.
* Fix compression code (Werner Fink)
* Put new bytes constant in the right file (not the generated one)
- Remove patches
file-5.26-version.patch
file-5.26-downgrade_DER.patch
file-5.26-console.diff
file-5.26-zmagic.patch
as now upstream
- Disable patch file-5.26-revert-close.patch for test
- Modify patches
file-5.17-option.dif
file-5.26.dif
-------------------------------------------------------------------
Wed Apr 20 07:14:15 UTC 2016 - werner@suse.de
- Add and revert upstream patch file-5.26-revert-close.patch
(commit 0177f6dd30e1f8c5639c058dcdf1d9edd9f8528c) to help
rpmbuild not to loose stdin
-------------------------------------------------------------------
Tue Apr 19 11:52:49 UTC 2016 - werner@suse.de
- Add patch file-5.26-zmagic.patch
to fix detection chain if for compresses files are expanded
-------------------------------------------------------------------
Tue Apr 19 09:38:07 UTC 2016 - werner@suse.de
- Add upstream patch file-5.26-console.diff
to fix wrong detection of UNIF edb files
-------------------------------------------------------------------
Tue Apr 19 09:35:28 UTC 2016 - werner@suse.de
- Add upstream patch file-5.26-downgrade_DER.patch
to fix DER error messages as well oas offset handling
-------------------------------------------------------------------
Mon Apr 18 12:13:33 UTC 2016 - werner@suse.de
- Update to file version 5.26
* make the number of bytes read from files configurable.
* Add bounds checks for DER code (discovered by Thomas Jarosch)
* Change indirect recursion limit to indirect use count and
bump from 15 to 50 to prevent abuse.
* Add -00 which prints filename\0description\0
* Fix ID3 indirect parsing
* add DER parsing capability
* provide dprintf(3) for the OS's that don't have it.
* redo the compression code report decompression errors
* REG_STARTEND code is not working as expected, delete it.
* Add zlib support if we have it.
* PR/492: compression forking was broken with magic_buffer.
- Removed patches as upstream now
file-4.24-mips.dif
file-5.25-avoid-double-evaluation-in-python-bindings.dif
- Modified patches
file-5.12-zip.dif
file-5.16-ocloexec.patch
file-5.19-printf.dif
file-5.19-zip2.0.dif
file-5.22-elf.dif
file-5.23-endian.patch
file-5.24-nitpick.dif
file-secure_getenv.patch
- Renamed patches
file-5.23.dif becomes file-5.26.dif
- Added patch from upstream to fix version handling of PHP files
file-5.26-version.patch
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Feb 16 12:40:33 UTC 2016 - rolf@rotkraut.de Tue Feb 16 12:40:33 UTC 2016 - rolf@rotkraut.de

View File

@ -32,7 +32,7 @@ Obsoletes: file-64bit
%endif %endif
# #
# Set Version also in python-magic.spec # Set Version also in python-magic.spec
Version: 5.25 Version: 5.28
Release: 0 Release: 0
Summary: A Tool to Determine File Types Summary: A Tool to Determine File Types
License: BSD-2-Clause License: BSD-2-Clause
@ -40,7 +40,7 @@ Group: Productivity/File utilities
Source: ftp://ftp.astron.com/pub/file/file-%{version}.tar.gz Source: ftp://ftp.astron.com/pub/file/file-%{version}.tar.gz
Source2: baselibs.conf Source2: baselibs.conf
Source3: file-rpmlintrc Source3: file-rpmlintrc
Patch: file-5.23.dif Patch: file-5.28.dif
Patch1: file-5.19-misc.dif Patch1: file-5.19-misc.dif
Patch4: file-4.24-autoconf.dif Patch4: file-4.24-autoconf.dif
Patch5: file-5.14-tex.dif Patch5: file-5.14-tex.dif
@ -52,7 +52,6 @@ Patch11: file-5.12-zip.dif
Patch12: file-5.17-option.dif Patch12: file-5.17-option.dif
Patch13: file-4.21-scribus.dif Patch13: file-4.21-scribus.dif
Patch15: file-4.21-xcursor.dif Patch15: file-4.21-xcursor.dif
Patch20: file-4.24-mips.dif
Patch22: file-5.19-cromfs.dif Patch22: file-5.19-cromfs.dif
Patch25: file-5.18-javacheck.dif Patch25: file-5.18-javacheck.dif
Patch26: file-5.19-solv.dif Patch26: file-5.19-solv.dif
@ -64,7 +63,7 @@ Patch34: file-5.23-endian.patch
Patch35: file-5.24-nitpick.dif Patch35: file-5.24-nitpick.dif
Patch36: file-5.15-clear-invalid.patch Patch36: file-5.15-clear-invalid.patch
Patch37: file-secure_getenv.patch Patch37: file-secure_getenv.patch
Patch38: file-5.25-avoid-double-evaluation-in-python-bindings.dif Patch38: file-5.28-compress.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
%global _sysconfdir /etc %global _sysconfdir /etc
%global _miscdir %{_datadir}/misc %global _miscdir %{_datadir}/misc
@ -75,31 +74,33 @@ specified file. File type recognition is controlled by the file
/etc/magic, which contains the classification criteria. This command is /etc/magic, which contains the classification criteria. This command is
used by apsfilter to permit automatic printing of different file types. used by apsfilter to permit automatic printing of different file types.
%package -n file-magic %package magic
Summary: The magic files for libmagic to use Summary: The magic files for libmagic to use
Group: Productivity/File utilities Group: Productivity/File utilities
Obsoletes: libmagic-data Obsoletes: libmagic-data < %{version}
Provides: libmagic-data = %{version}
%description -n file-magic %description magic
This package contains the basic magic files that libmagic reads and uses This package contains the basic magic files that libmagic reads and uses
to estimate a file's type. to estimate a file's type.
%package -n %libname %package -n %libname
Summary: Library with file's functionality Summary: Library with file's functionality
Group: System/Libraries Group: System/Libraries
Provides: file:%{_libdir}/libmagic.so.%{somajor}
Requires: file-magic = %{version} Requires: file-magic = %{version}
%description -n %libname %description -n %libname
This library reads magic files and detects file types. Used by file command This library reads magic files and detects file types. Used by file command
%package -n file-devel %package devel
Summary: Include Files and Libraries mandatory for Development Summary: Include Files and Libraries mandatory for Development
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Provides: file:/usr/include/magic.h Provides: file:/usr/include/magic.h
Requires: %libname = %{version} Requires: %libname = %{version}
Requires: glibc-devel Requires: glibc-devel
%description -n file-devel %description devel
This package contains all necessary include files and libraries needed This package contains all necessary include files and libraries needed
to develop applications that require the magic "file" interface. to develop applications that require the magic "file" interface.
@ -116,9 +117,6 @@ to develop applications that require the magic "file" interface.
%patch12 -p0 -b .opt %patch12 -p0 -b .opt
%patch13 -p0 -b .scri %patch13 -p0 -b .scri
%patch15 -p0 -b .xcur %patch15 -p0 -b .xcur
%ifarch mips
%patch20 -p0 -b .mips
%endif
%patch22 -p0 -b .cromfs %patch22 -p0 -b .cromfs
%patch25 -p0 -b .javacheck %patch25 -p0 -b .javacheck
%patch26 -p0 -b .solv %patch26 -p0 -b .solv
@ -130,9 +128,11 @@ to develop applications that require the magic "file" interface.
%patch35 -p0 -b .nitpick %patch35 -p0 -b .nitpick
%patch36 -p1 -b .clear %patch36 -p1 -b .clear
%patch37 -p1 -b .getenv %patch37 -p1 -b .getenv
%patch38 -p1 -b .pythondouble # PATCH-FIX-UPSTREAM -- fix crash as found in build system
%patch38 -p0 -b .rpmbuild
%patch -b .0 %patch -b .0
test -s src/magic.h.in || cp -p src/magic.h src/magic.h.in test -s src/magic.h.in || cp -p src/magic.h src/magic.h.in
rm -fv src/magic.h
%build %build
export LANG=POSIX export LANG=POSIX
@ -157,7 +157,10 @@ make DESTDIR=%{buildroot} install pkgdatadir='$(datadir)'
rm -vf %{buildroot}%{_sysconfdir}/magic rm -vf %{buildroot}%{_sysconfdir}/magic
echo '# Localstuff: file(1) magic(5) for locally observed files' > %{buildroot}%{_sysconfdir}/magic echo '# Localstuff: file(1) magic(5) for locally observed files' > %{buildroot}%{_sysconfdir}/magic
echo '# global magic file is %{_miscdir}/magic(.mgc)' >> %{buildroot}%{_sysconfdir}/magic echo '# global magic file is %{_miscdir}/magic(.mgc)' >> %{buildroot}%{_sysconfdir}/magic
%{nil install -s dcore %{buildroot}%{_bindir}} # Does not build
%if %{with decore}
install -s dcore %{buildroot}%{_bindir}
%endif
# Check out that the binary does not bail out: # Check out that the binary does not bail out:
LD_LIBRARY_PATH=%{buildroot}%{_libdir} LD_LIBRARY_PATH=%{buildroot}%{_libdir}
export LD_LIBRARY_PATH export LD_LIBRARY_PATH
@ -171,25 +174,27 @@ unset LD_LIBRARY_PATH
%postun -n %libname -p /sbin/ldconfig %postun -n %libname -p /sbin/ldconfig
%files -n %libname %files -n %libname
%defattr (644,root,root,755) %defattr (-,root,root)
%{_libdir}/lib*.so.* %{_libdir}/lib*.so.*
%files -n file-magic %files magic
%defattr (644,root,root,755) %defattr (-,root,root)
%config(noreplace) %{_sysconfdir}/magic %config(noreplace) %{_sysconfdir}/magic
%{_miscdir}/magic %{_miscdir}/magic
%{_miscdir}/magic.mgc %{_miscdir}/magic.mgc
%doc %{_mandir}/man5/magic.5.gz %doc %{_mandir}/man5/magic.5.gz
%files %files
%defattr (644,root,root,755) %defattr (-,root,root)
%{nil %{_bindir}/dcore} %if %{with decore}
%attr(755,root,root) %{_bindir}/dcore
%endif
%attr(755,root,root) %{_bindir}/file %attr(755,root,root) %{_bindir}/file
%doc %{_mandir}/man1/file.1.gz %doc %{_mandir}/man1/file.1.gz
%doc COPYING AUTHORS NEWS ChangeLog %doc COPYING AUTHORS NEWS ChangeLog
%files -n file-devel %files devel
%defattr (644,root,root,755) %defattr (-,root,root)
%{_libdir}/lib*.so %{_libdir}/lib*.so
%{_includedir}/magic.h %{_includedir}/magic.h
%doc %{_mandir}/man3/libmagic.3.gz %doc %{_mandir}/man3/libmagic.3.gz

View File

@ -2,3 +2,4 @@
# This script is called automatically during autobuild checkin. # This script is called automatically during autobuild checkin.
version=$(grep '^Version:.*' file.spec) version=$(grep '^Version:.*' file.spec)
sed -ri "s,^Version:.*,$version," python-magic.spec sed -ri "s,^Version:.*,$version," python-magic.spec
sed -ri "s,^Version:.*,$version," python3-magic.spec

View File

@ -1,3 +1,13 @@
-------------------------------------------------------------------
Wed Apr 20 08:49:18 UTC 2016 - werner@suse.de
- Add Build Require python-setuptools
-------------------------------------------------------------------
Mon Apr 18 12:21:12 UTC 2016 - werner@suse.de
- Now it's file 5.26
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Feb 16 12:41:14 UTC 2016 - rolf@rotkraut.de Tue Feb 16 12:41:14 UTC 2016 - rolf@rotkraut.de

View File

@ -25,9 +25,10 @@ Name: python-magic
BuildRequires: findutils BuildRequires: findutils
BuildRequires: libtool BuildRequires: libtool
BuildRequires: python-devel BuildRequires: python-devel
BuildRequires: python-setuptools
BuildRequires: zlib-devel BuildRequires: zlib-devel
Url: http://www.darwinsys.com/file/ Url: http://www.darwinsys.com/file/
Version: 5.25 Version: 5.28
Release: 0 Release: 0
Summary: Python module to use libmagic Summary: Python module to use libmagic
License: BSD-3-Clause and BSD-4-Clause License: BSD-3-Clause and BSD-4-Clause

View File

@ -1,3 +1,13 @@
-------------------------------------------------------------------
Wed Apr 20 08:49:18 UTC 2016 - werner@suse.de
- Add Build Require python3-setuptools
-------------------------------------------------------------------
Mon Apr 18 12:21:42 UTC 2016 - werner@suse.de
- Now it's file 5.26
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Feb 16 12:42:29 UTC 2016 - rolf@rotkraut.de Tue Feb 16 12:42:29 UTC 2016 - rolf@rotkraut.de

View File

@ -25,9 +25,10 @@ Name: python3-magic
BuildRequires: findutils BuildRequires: findutils
BuildRequires: libtool BuildRequires: libtool
BuildRequires: python3-devel BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: zlib-devel BuildRequires: zlib-devel
Url: http://www.darwinsys.com/file/ Url: http://www.darwinsys.com/file/
Version: 5.25 Version: 5.28
Release: 0 Release: 0
Summary: Python module to use libmagic Summary: Python module to use libmagic
License: BSD-3-Clause and BSD-4-Clause License: BSD-3-Clause and BSD-4-Clause