1
1
diff -u libmagic.orig/apprentice.c libmagic/apprentice.c
2
- --- libmagic.orig/apprentice.c 2021-02-23 00 :51:11.000000000 +0000
3
- +++ libmagic/apprentice.c 2022-04-25 16: 00:13.974219365 +0100
2
+ --- libmagic.orig/apprentice.c 2021-02-22 17 :51:11.000000000 -0700
3
+ +++ libmagic/apprentice.c 2022-06-06 00:36:46.758464267 -0600
4
4
@@ -29,6 +29,8 @@
5
5
* apprentice - make one pass through /etc/magic, learning its secrets.
6
6
*/
@@ -373,6 +373,15 @@ diff -u libmagic.orig/apprentice.c libmagic/apprentice.c
373
373
if (len == 0) /* null line, garbage, etc */
374
374
continue;
375
375
if (line[len - 1] == '\n') {
376
+ @@ -1232,7 +1187,7 @@
377
+ continue;
378
+ }
379
+ if ((*bang[i].fun)(ms, &me,
380
+ - line + bang[i].len + 2,
381
+ + line + bang[i].len + 2,
382
+ len - bang[i].len - 2) != 0) {
383
+ (*errs)++;
384
+ continue;
376
385
@@ -1256,8 +1211,8 @@
377
386
}
378
387
if (me.mp)
@@ -411,7 +420,7 @@ diff -u libmagic.orig/apprentice.c libmagic/apprentice.c
411
420
- char **filearr = NULL, *mfn;
412
421
- struct stat st;
413
422
+ char **filearr = NULL;
414
- + zend_stat_t st;
423
+ + zend_stat_t st = {0} ;
415
424
struct magic_map *map;
416
425
struct magic_entry_set mset[MAGIC_SETS];
417
426
- DIR *dir;
@@ -501,6 +510,15 @@ diff -u libmagic.orig/apprentice.c libmagic/apprentice.c
501
510
}
502
511
} else
503
512
load_1(ms, action, fn, &errs, mset);
513
+ @@ -1465,7 +1419,7 @@
514
+ /* coalesce per file arrays into a single one, if needed */
515
+ if (mset[j].count == 0)
516
+ continue;
517
+ -
518
+ +
519
+ if (coalesce_entries(ms, mset[j].me, mset[j].count,
520
+ &map->magic[j], &map->nmagic[j]) == -1) {
521
+ errs++;
504
522
@@ -1474,7 +1428,6 @@
505
523
}
506
524
@@ -926,8 +944,8 @@ diff -u libmagic.orig/apprentice.c libmagic/apprentice.c
926
944
m->str_flags = swap4(m->str_flags);
927
945
}
928
946
diff -u libmagic.orig/ascmagic.c libmagic/ascmagic.c
929
- --- libmagic.orig/ascmagic.c 2021-02-23 00 :49:06.000000000 +0000
930
- +++ libmagic/ascmagic.c 2022-04-25 16:00:13.974219365 +0100
947
+ --- libmagic.orig/ascmagic.c 2021-02-22 17 :49:06.000000000 -0700
948
+ +++ libmagic/ascmagic.c 2021-10-24 17:03:48.529884451 -0600
931
949
@@ -96,7 +96,7 @@
932
950
rv = file_ascmagic_with_encoding(ms, &bb,
933
951
ubuf, ulen, code, type, text);
@@ -957,8 +975,8 @@ diff -u libmagic.orig/ascmagic.c libmagic/ascmagic.c
957
975
return rv;
958
976
}
959
977
diff -u libmagic.orig/buffer.c libmagic/buffer.c
960
- --- libmagic.orig/buffer.c 2021-02-23 00 :49:26.000000000 +0000
961
- +++ libmagic/buffer.c 2022-04-15 20:27:23.837624723 +0100
978
+ --- libmagic.orig/buffer.c 2021-02-22 17 :49:26.000000000 -0700
979
+ +++ libmagic/buffer.c 2021-10-24 17:03:45.681791493 -0600
962
980
@@ -31,19 +31,23 @@
963
981
#endif /* lint */
964
982
@@ -1013,8 +1031,8 @@ diff -u libmagic.orig/buffer.c libmagic/buffer.c
1013
1031
goto out;
1014
1032
}
1015
1033
diff -u libmagic.orig/cdf.c libmagic/cdf.c
1016
- --- libmagic.orig/cdf.c 2021-02-23 00 :49:06.000000000 +0000
1017
- +++ libmagic/cdf.c 2022-04-15 20:27:23.837624723 +0100
1034
+ --- libmagic.orig/cdf.c 2021-02-22 17 :49:06.000000000 -0700
1035
+ +++ libmagic/cdf.c 2021-10-24 17:03:45.681791493 -0600
1018
1036
@@ -43,7 +43,17 @@
1019
1037
#include <err.h>
1020
1038
#endif
@@ -1248,8 +1266,8 @@ diff -u libmagic.orig/cdf.c libmagic/cdf.c
1248
1266
1249
1267
#endif
1250
1268
diff -u libmagic.orig/cdf.h libmagic/cdf.h
1251
- --- libmagic.orig/cdf.h 2021-02-23 00 :49:06.000000000 +0000
1252
- +++ libmagic/cdf.h 2022-04-15 20:27:23.837624723 +0100
1269
+ --- libmagic.orig/cdf.h 2021-02-22 17 :49:06.000000000 -0700
1270
+ +++ libmagic/cdf.h 2021-10-24 17:03:40.741632734 -0600
1253
1271
@@ -35,10 +35,10 @@
1254
1272
#ifndef _H_CDF_
1255
1273
#define _H_CDF_
@@ -1265,8 +1283,8 @@ diff -u libmagic.orig/cdf.h libmagic/cdf.h
1265
1283
#ifdef __DJGPP__
1266
1284
#define timespec timeval
1267
1285
diff -u libmagic.orig/cdf_time.c libmagic/cdf_time.c
1268
- --- libmagic.orig/cdf_time.c 2021-02-23 00 :49:06.000000000 +0000
1269
- +++ libmagic/cdf_time.c 2022-04-15 20:27:23.837624723 +0100
1286
+ --- libmagic.orig/cdf_time.c 2021-02-22 17 :49:06.000000000 -0700
1287
+ +++ libmagic/cdf_time.c 2021-10-24 17:03:40.741632734 -0600
1270
1288
@@ -23,6 +23,7 @@
1271
1289
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
1272
1290
* POSSIBILITY OF SUCH DAMAGE.
@@ -1294,8 +1312,8 @@ diff -u libmagic.orig/cdf_time.c libmagic/cdf_time.c
1294
1312
return buf;
1295
1313
(void)snprintf(buf, 26, "*Bad* %#16.16" INT64_T_FORMAT "x\n",
1296
1314
diff -u libmagic.orig/compress.c libmagic/compress.c
1297
- --- libmagic.orig/compress.c 2021-02-23 00 :49:07.000000000 +0000
1298
- +++ libmagic/compress.c 2022-04-25 16:00:13.978219426 +0100
1315
+ --- libmagic.orig/compress.c 2021-02-22 17 :49:07.000000000 -0700
1316
+ +++ libmagic/compress.c 2021-10-24 17:03:48.529884451 -0600
1299
1317
@@ -51,7 +51,7 @@
1300
1318
#ifndef HAVE_SIG_T
1301
1319
typedef void (*sig_t)(int);
@@ -1431,8 +1449,8 @@ diff -u libmagic.orig/compress.c libmagic/compress.c
1431
1449
#endif
1432
1450
+ #endif
1433
1451
diff -u libmagic.orig/der.c libmagic/der.c
1434
- --- libmagic.orig/der.c 2021-02-23 00 :49:06.000000000 +0000
1435
- +++ libmagic/der.c 2022-04-25 16:00:13.978219426 +0100
1452
+ --- libmagic.orig/der.c 2021-02-22 17 :49:06.000000000 -0700
1453
+ +++ libmagic/der.c 2021-10-24 17:03:48.529884451 -0600
1436
1454
@@ -54,7 +54,9 @@
1437
1455
#include "magic.h"
1438
1456
#include "der.h"
@@ -1444,8 +1462,8 @@ diff -u libmagic.orig/der.c libmagic/der.c
1444
1462
#include <err.h>
1445
1463
#endif
1446
1464
diff -u libmagic.orig/elfclass.h libmagic/elfclass.h
1447
- --- libmagic.orig/elfclass.h 2021-02-23 00 :49:06.000000000 +0000
1448
- +++ libmagic/elfclass.h 2022-04-15 20:27:23.837624723 +0100
1465
+ --- libmagic.orig/elfclass.h 2021-02-22 17 :49:06.000000000 -0700
1466
+ +++ libmagic/elfclass.h 2021-10-24 17:03:40.741632734 -0600
1449
1467
@@ -41,7 +41,7 @@
1450
1468
return toomany(ms, "program headers", phnum);
1451
1469
flags |= FLAGS_IS_CORE;
@@ -1474,8 +1492,8 @@ diff -u libmagic.orig/elfclass.h libmagic/elfclass.h
1474
1492
fsize, elf_getu16(swap, elfhdr.e_machine),
1475
1493
CAST(int, elf_getu16(swap, elfhdr.e_shstrndx)),
1476
1494
diff -u libmagic.orig/encoding.c libmagic/encoding.c
1477
- --- libmagic.orig/encoding.c 2021-02-23 00 :49:06.000000000 +0000
1478
- +++ libmagic/encoding.c 2022-04-25 16:00:13.978219426 +0100
1495
+ --- libmagic.orig/encoding.c 2021-02-22 17 :49:06.000000000 -0700
1496
+ +++ libmagic/encoding.c 2021-10-24 17:03:48.529884451 -0600
1479
1497
@@ -98,14 +98,14 @@
1480
1498
nbytes = ms->encoding_max;
1481
1499
@@ -1515,8 +1533,8 @@ diff -u libmagic.orig/encoding.c libmagic/encoding.c
1515
1533
if (u < 3) \
1516
1534
return 0; \
1517
1535
diff -u libmagic.orig/file.h libmagic/file.h
1518
- --- libmagic.orig/file.h 2021-02-23 00 :49:06.000000000 +0000
1519
- +++ libmagic/file.h 2022-04-25 16:00:13.978219426 +0100
1536
+ --- libmagic.orig/file.h 2021-02-22 17 :49:06.000000000 -0700
1537
+ +++ libmagic/file.h 2021-10-24 17:03:48.529884451 -0600
1520
1538
@@ -33,17 +33,14 @@
1521
1539
#ifndef __file_h__
1522
1540
#define __file_h__
@@ -1776,8 +1794,8 @@ diff -u libmagic.orig/file.h libmagic/file.h
1776
1794
+
1777
1795
#endif /* __file_h__ */
1778
1796
diff -u libmagic.orig/fsmagic.c libmagic/fsmagic.c
1779
- --- libmagic.orig/fsmagic.c 2021-02-23 00 :49:06.000000000 +0000
1780
- +++ libmagic/fsmagic.c 2022-04-15 20:27:23.837624723 +0100
1797
+ --- libmagic.orig/fsmagic.c 2021-02-22 17 :49:06.000000000 -0700
1798
+ +++ libmagic/fsmagic.c 2021-10-24 17:03:45.681791493 -0600
1781
1799
@@ -66,26 +66,10 @@
1782
1800
# define minor(dev) ((dev) & 0xff)
1783
1801
#endif
@@ -2069,8 +2087,8 @@ diff -u libmagic.orig/fsmagic.c libmagic/fsmagic.c
2069
2087
#ifndef __COHERENT__
2070
2088
case S_IFSOCK:
2071
2089
diff -u libmagic.orig/funcs.c libmagic/funcs.c
2072
- --- libmagic.orig/funcs.c 2021-02-23 00 :49:06.000000000 +0000
2073
- +++ libmagic/funcs.c 2022-04-25 16:00:13.978219426 +0100
2090
+ --- libmagic.orig/funcs.c 2021-02-22 17 :49:06.000000000 -0700
2091
+ +++ libmagic/funcs.c 2021-10-24 17:03:48.529884451 -0600
2074
2092
@@ -51,6 +51,13 @@
2075
2093
#define SIZE_MAX ((size_t)~0)
2076
2094
#endif
@@ -2389,8 +2407,8 @@ diff -u libmagic.orig/funcs.c libmagic/funcs.c
2389
2407
protected char *
2390
2408
file_strtrim(char *str)
2391
2409
diff -u libmagic.orig/magic.c libmagic/magic.c
2392
- --- libmagic.orig/magic.c 2021-02-23 00 :49:06.000000000 +0000
2393
- +++ libmagic/magic.c 2022-04-25 16: 00:13.978219426 +0100
2410
+ --- libmagic.orig/magic.c 2021-02-22 17 :49:06.000000000 -0700
2411
+ +++ libmagic/magic.c 2022-06-06 00:36:46.758464267 -0600
2394
2412
@@ -25,11 +25,6 @@
2395
2413
* SUCH DAMAGE.
2396
2414
*/
@@ -2717,7 +2735,7 @@ diff -u libmagic.orig/magic.c libmagic/magic.c
2717
2735
int rv = -1;
2718
2736
unsigned char *buf;
2719
2737
- struct stat sb;
2720
- + zend_stat_t sb;
2738
+ + zend_stat_t sb = {0} ;
2721
2739
ssize_t nbytes = 0; /* number of bytes read from a datafile */
2722
2740
- int ispipe = 0;
2723
2741
- int okstat = 0;
@@ -2868,8 +2886,8 @@ diff -u libmagic.orig/magic.c libmagic/magic.c
2868
2886
}
2869
2887
return file_getbuffer(ms);
2870
2888
diff -u libmagic.orig/magic.h libmagic/magic.h
2871
- --- libmagic.orig/magic.h 2022-04-25 16:01:07.619036406 +0100
2872
- +++ libmagic/magic.h 2022-04-25 16:00:13.978219426 +0100
2889
+ --- libmagic.orig/magic.h 2022-07-05 00:56:31.213294537 -0600
2890
+ +++ libmagic/magic.h 2021-10-24 17:03:48.529884451 -0600
2873
2891
@@ -126,6 +126,7 @@
2874
2892
2875
2893
const char *magic_getpath(const char *, int);
@@ -2879,8 +2897,8 @@ diff -u libmagic.orig/magic.h libmagic/magic.h
2879
2897
const char *magic_buffer(magic_t, const void *, size_t);
2880
2898
2881
2899
diff -u libmagic.orig/print.c libmagic/print.c
2882
- --- libmagic.orig/print.c 2021-02-23 00 :49:07.000000000 +0000
2883
- +++ libmagic/print.c 2022-04-15 20:27:23.837624723 +0100
2900
+ --- libmagic.orig/print.c 2021-02-22 17 :49:07.000000000 -0700
2901
+ +++ libmagic/print.c 2021-10-24 17:03:45.681791493 -0600
2884
2902
@@ -28,6 +28,7 @@
2885
2903
/*
2886
2904
* print.c - debugging printout routines
@@ -2944,8 +2962,8 @@ diff -u libmagic.orig/print.c libmagic/print.c
2944
2962
if (pp == NULL)
2945
2963
goto out;
2946
2964
diff -u libmagic.orig/readcdf.c libmagic/readcdf.c
2947
- --- libmagic.orig/readcdf.c 2021-02-23 00 :49:08.000000000 +0000
2948
- +++ libmagic/readcdf.c 2022-04-15 20:27:23.837624723 +0100
2965
+ --- libmagic.orig/readcdf.c 2021-02-22 17 :49:08.000000000 -0700
2966
+ +++ libmagic/readcdf.c 2021-10-24 17:03:45.681791493 -0600
2949
2967
@@ -31,7 +31,11 @@
2950
2968
2951
2969
#include <assert.h>
@@ -3068,8 +3086,8 @@ diff -u libmagic.orig/readcdf.c libmagic/readcdf.c
3068
3086
/* If we handled it already, return */
3069
3087
if (i != -1)
3070
3088
diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
3071
- --- libmagic.orig/softmagic.c 2021-02-23 00 :49:06.000000000 +0000
3072
- +++ libmagic/softmagic.c 2022-04-25 16: 00:30.222464809 +0100
3089
+ --- libmagic.orig/softmagic.c 2021-02-22 17 :49:06.000000000 -0700
3090
+ +++ libmagic/softmagic.c 2022-07-05 00:49:26.658974406 -0600
3073
3091
@@ -43,6 +43,10 @@
3074
3092
#include <time.h>
3075
3093
#include "der.h"
@@ -3247,7 +3265,29 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
3247
3265
return rv;
3248
3266
}
3249
3267
3250
- @@ -1845,15 +1847,15 @@
3268
+ @@ -1531,11 +1533,7 @@
3269
+ size_t len;
3270
+ *c = ms->c;
3271
+ len = c->len * sizeof(*c->li);
3272
+ - ms->c.li = CAST(struct level_info *, malloc(len));
3273
+ - if (ms->c.li == NULL) {
3274
+ - ms->c = *c;
3275
+ - return -1;
3276
+ - }
3277
+ + ms->c.li = CAST(struct level_info *, emalloc(len));
3278
+ memcpy(ms->c.li, c->li, len);
3279
+ return 0;
3280
+ }
3281
+ @@ -1543,7 +1541,7 @@
3282
+ private void
3283
+ restore_cont(struct magic_set *ms, struct cont *c)
3284
+ {
3285
+ - free(ms->c.li);
3286
+ + efree(ms->c.li);
3287
+ ms->c = *c;
3288
+ }
3289
+
3290
+ @@ -1845,15 +1843,15 @@
3251
3291
if ((ms->flags & MAGIC_NODESC) == 0 &&
3252
3292
file_printf(ms, F(ms, m->desc, "%u"), offset) == -1)
3253
3293
{
@@ -3266,7 +3306,7 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
3266
3306
return rv;
3267
3307
3268
3308
case FILE_USE:
3269
- @@ -1958,10 +1960 ,13 @@
3309
+ @@ -1958,10 +1956 ,13 @@
3270
3310
}
3271
3311
else if ((flags & STRING_COMPACT_WHITESPACE) &&
3272
3312
isspace(*a)) {
@@ -3281,7 +3321,7 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
3281
3321
b++;
3282
3322
}
3283
3323
else {
3284
- @@ -1997,6 +2002 ,60 @@
3324
+ @@ -1997,6 +1998 ,60 @@
3285
3325
return file_strncmp(a, b, len, maxlen, flags);
3286
3326
}
3287
3327
@@ -3342,7 +3382,7 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
3342
3382
private int
3343
3383
magiccheck(struct magic_set *ms, struct magic *m)
3344
3384
{
3345
- @@ -2144,14 +2203 ,13 @@
3385
+ @@ -2144,14 +2199 ,13 @@
3346
3386
slen = MIN(m->vallen, sizeof(m->value.s));
3347
3387
l = 0;
3348
3388
v = 0;
@@ -3359,15 +3399,15 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
3359
3399
if (!found)
3360
3400
return 0;
3361
3401
idx = found - ms->search.s;
3362
- @@ -2159,7 +2217 ,6 @@
3402
+ @@ -2159,7 +2213 ,6 @@
3363
3403
ms->search.rm_len = ms->search.s_len - idx;
3364
3404
break;
3365
3405
}
3366
3406
- #endif
3367
3407
3368
3408
for (idx = 0; m->str_range == 0 || idx < m->str_range; idx++) {
3369
3409
if (slen + idx > ms->search.s_len)
3370
- @@ -2176,65 +2233 ,77 @@
3410
+ @@ -2176,65 +2229 ,77 @@
3371
3411
break;
3372
3412
}
3373
3413
case FILE_REGEX: {
@@ -3497,15 +3537,14 @@ diff -u libmagic.orig/softmagic.c libmagic/softmagic.c
3497
3537
}
3498
3538
case FILE_USE:
3499
3539
diff -u libmagic.orig/strcasestr.c libmagic/strcasestr.c
3500
- --- libmagic.orig/strcasestr.c 2021-02-23 00 :49:12.000000000 +0000
3501
- +++ libmagic/strcasestr.c 2022-04-15 20:27:23.837624723 +0100
3540
+ --- libmagic.orig/strcasestr.c 2021-02-22 17 :49:12.000000000 -0700
3541
+ +++ libmagic/strcasestr.c 2022-06-06 00:36:46.758464267 -0600
3502
3542
@@ -39,6 +39,8 @@
3503
3543
3504
3544
#include "file.h"
3505
3545
3506
3546
+ #include <inttypes.h>
3507
3547
+ #include <stdint.h>
3508
- +
3509
3548
#include <assert.h>
3510
3549
#include <ctype.h>
3511
3550
#include <string.h>
0 commit comments