~blowry/file

b5e9d75b5743536d765a20c6e18c9fd4a72fbaa2 — Christos Zoulas 28 years ago cdf0265
*** empty log message ***
M MAINT => MAINT +3 -3
@@ 1,4 1,4 @@
$Id: MAINT,v 1.1 1992/06/30 13:11:10 ian Exp $
$Id: MAINT,v 1.2 1993/09/23 21:47:01 christos Exp $

Maintenance notes:



@@ 29,5 29,5 @@ your changed version.

Thank you for your assistance and cooperation.

Ian Darwin.
ian@sq.com
Mark Moraes		Christos Zoulas
moraes@deshaw.com	christos@deshaw.com

M README => README +3 -12
@@ 1,5 1,5 @@
** README for file(1) Command **
@(#) $Id: README,v 1.19 1993/04/05 10:18:56 ian Exp $
@(#) $Id: README,v 1.20 1993/09/23 21:47:01 christos Exp $

This is Release 3.x of Ian Darwin's (copyright but distributable)
file(1) command.  Release 3.x is scheduled for inclusion in the


@@ 35,7 35,7 @@ In addition, the /etc/magic file is built from a subdirectory
for easier(?) maintenance.  I will act as a clearinghouse for
magic numbers assigned to all sorts of data files that
are in reasonable circulation. Send your magic numbers,
in magic(4) format please, to the author, Ian Darwin.
in magic(4) format please, to the maintainer, Christos Zoulas.

LEGAL.NOTICE - read this first.
README - read this second (you are currently reading this file).


@@ 67,17 67,8 @@ strtok.c, getopt.c - in case you them (courtesy of Henry Spencer).
strtol.c, strchr.c - in case you need them - public domain.
tst - simple test suite, built from tst/Makefile

Ian Darwin
Darwin Open Systems
R R 1
Palgrave, Ontario L0N 1P0
Canada

E-mail: darwin@cs.toronto.edu
	ian@sq.com
	utzoo!ian
	ian@darwin.uucp
	uunet!sq!ian
E-mail: christos@deshaw.com, moraes@deshaw.com

Phone: Do not even think of telephoning me about this program. Send cash first!


M magic/Magdir/att3b => magic/Magdir/att3b +4 -0
@@ 32,3 32,7 @@
#>18	beshort		&00020000	- 32100 required
#>18	beshort		&00040000	and mau hardware required
#>22	beshort		>0		- version %ld
#
# core file for 3b2 
0	string		\000\004\036\212\200	3b2 core file
>364	string		>\0		of '%s'

M magic/Magdir/audio => magic/Magdir/audio +41 -25
@@ 1,27 1,43 @@
# Sound formats, from Jan Nicolai Langfeldt <janl@ifi.uio.no>
#
# XXX -what the hell is the "mips" stuff doing there?  It looks like
# the archive stuff from "iris"....
# Sound formats, from Jan Nicolai Langfeldt <janl@ifi.uio.no>,
#
0       string          .snd            audio data:
>12     long            1               8-bit u-law,
>12     long            2               8-bit linear PCM,
>12     long            3               16-bit linear PCM,
>12     long            4               24-bit linear PCM,
>12     long            5               32-bit linear PCM,
>12     long            6               32-bit floating point,
>12     long            7               64-bit floating point,
>12	long		23		compressed (G.721 ADPCM),
>20     long            1               mono,
>20     long            2               stereo,
>20     long            4               quad,
>16     long            x               %d Hz
8       long            0x41494646      AIFF sound data file
0       long            0x4e54524b      MultiTrack sound data file
>4      long            x               - version %ld
>20     string          U               with mipsucode members
>21     string          L               with mipsel members
>21     string          B               with mipseb members
>19     string          L               and a EL hash tabl
>19     string          B               and a EB hash tabl
>22     string          X               -- out of date

# Sun/NeXT audio data
0	string		.snd		audio data:
>12	belong		1		8-bit u-law,
>12	belong		2		8-bit linear PCM,
>12	belong		3		16-bit linear PCM,
>12	belong		4		24-bit linear PCM,
>12	belong		5		32-bit linear PCM,
>12	belong		6		32-bit floating point,
>12	belong		7		64-bit floating point,
>12	belong		23		compressed (G.721 ADPCM),
>20	belong		1		mono,
>20	belong		2		stereo,
>20	belong		4		quad,
>16	belong		x		%d Hz
# DEC systems (e.g. DECstation 5000) use a variant of the Sun/NeXT format
# that uses little-endian encoding and has a different magic number
# (0x0064732E in little-endian encoding).
0	lelong		0x0064732E	DEC audio data:
>12	lelong		1		8-bit u-law,
>12	lelong		2		8-bit linear PCM,
>12	lelong		3		16-bit linear PCM,
>12	lelong		4		24-bit linear PCM,
>12	lelong		5		32-bit linear PCM,
>12	lelong		6		32-bit floating point,
>12	lelong		7		64-bit floating point,
>12	lelong		23		compressed (G.721 ADPCM),
>20	lelong		1		mono,
>20	lelong		2		stereo,
>20	lelong		4		quad,
>16	lelong		x		%d Hz
# Bytes 0-3 of AIFF, AIFF-C, & 8SVX audio files are "FORM"
8	string		AIFF		AIFF audio data
8	string		AIFC		AIFF-C audio data
8	string		8SVX		IFF/8SVX audio data
# Bytes 0-3 of Waveform (*.wav) audio files are "RIFF"
8	string		WAVE		Waveform audio data
0	string		Creative\ Voice\ File	Soundblaster audio data
0	long		0x4e54524b	MultiTrack sound data file
>4	long		x		- version %ld

M magic/Magdir/commands => magic/Magdir/commands +6 -0
@@ 30,3 30,9 @@
0	string		#!/bin/perl	perl commands text
0	string		#!\ /bin/perl	perl commands text
0	string		eval\ "exec\ /bin/perl	perl commands text
0       string          #!/usr/bin/perl perl commands text
0       string          #!\ /usr/bin/perl       perl commands text
0       string          eval\ "exec\ /usr/bin/perl      perl commands text
0       string          #!/usr/local/bin/perl   perl commands text
0       string          #!\ /usr/local/bin/perl perl commands text
0       string          eval\ "exec\ /usr/local/bin/perl        perl commands text

M magic/Magdir/compress => magic/Magdir/compress +7 -15
@@ 2,17 2,10 @@
# Formats for various forms of compressed data
# Formats for "compress" proper have been moved into "compress.c",
# because it tries to uncompress it to figure out what's inside.

# According to gzip.h, this is the correct byte order for packed data.
#
# XXX - the two "packed data" versions are byte-swapped versions of
# one another; is that because the 2-byte magic number is written
# out in native byte order, with "unpack" figuring out the byte order
# from the magic number (in which case both can be left as is, or
# changed to specify a byte order *and* to indicate the byte order of
# the packing machine), or because the old "file" didn't have any way of
# having "magic"-file entries that specified a particular byte order?
#
0	short		017436		packed data
0	short		017037		packed data
0	string		\037\036	packed data

#
# This magic number is byte-order-independent.


@@ 32,9 25,8 @@
# handle these formats.  Note that I can only uncrunch, not crunch, and
# I didn't have a crunched file handy, so the crunch number is untested.
#				Keith Waclena <keith@cerberus.uchicago.edu>
0	short		0x76FF		squeezed data (CP/M, DOS)
0	short		0x76FE		crunched data (CP/M, DOS)
#
0	leshort		0x76FF		squeezed data (CP/M, DOS)
0	leshort		0x76FE		crunched data (CP/M, DOS)
# Freeze
0	short		0x1f9f		Frozen file 2.1
0	short		0x1f9e		Frozen file 1.0
0	string		\037\237	Frozen file 2.1
0	string		\037\236	Frozen file 1.0 (or gzip 0.5)

M magic/Magdir/hp => magic/Magdir/hp +38 -0
@@ 151,3 151,41 @@

0	string		msgcat01	HP NLS message catalog,
>8	long		>0		%d messages

# addendum to /etc/magic with HP-48sx file-types by phk@data.fls.dk 1jan92
0	string		HPHP48-		HP48 binary
>7	byte		>0		- Rev %c
>8	short		0x1129		(ADR)
>8	short		0x3329		(REAL)
>8	short		0x5529		(LREAL)
>8	short		0x7729		(COMPLX)
>8	short		0x9d29		(LCOMPLX)
>8	short		0xbf29		(CHAR)
>8	short		0xe829		(ARRAY)
>8	short		0x0a2a		(LNKARRAY)
>8	short		0x2c2a		(STRING)
>8	short		0x4e2a		(HXS)
>8	short		0x742a		(LIST)
>8	short		0x962a		(DIR)
>8	short		0xb82a		(ALG)
>8	short		0xda2a		(UNIT)
>8	short		0xfc2a		(TAGGED)
>8	short		0x1e2b		(GROB)
>8	short		0x402b		(LIB)
>8	short		0x622b		(BACKUP)
>8	short		0x882b		(LIBDATA)
>8	short		0x9d2d		(PROG)
>8	short		0xcc2d		(CODE)
>8	short		0x482e		(GNAME)
>8	short		0x6d2e		(LNAME)
>8	short		0x922e		(XLIB)
0	string		%%HP:		HP48 text
>6	string		T(0)		- T(0)
>6	string		T(1)		- T(1)
>6	string		T(2)		- T(2)
>6	string		T(3)		- T(3)
>10	string		A(D)		A(D)
>10	string		A(R)		A(R)
>10	string		A(G)		A(G)
>14	string		F(.)		F(.);
>14	string		F(,)		F(,);

M magic/Magdir/images => magic/Magdir/images +2 -2
@@ 28,8 28,8 @@
0	string		GIF		GIF picture
>3	string		87a		- version %s
>3	string		89a		- version %s
>6	short		>0		%d x
>8	short		>0		%d,
>6	leshort		>0		%hd x
>8	leshort		>0		%hd,
>10	byte		&0x40		interlaced,
>10	byte&0x07	=0x00		2 colors
>10	byte&0x07	=0x01		4 colors

M magic/Magdir/linux => magic/Magdir/linux +6 -6
@@ 1,9 1,9 @@
# Values for Linux/i386 binaries, From: Rik Faith <faith@cs.unc.edu>
2       short           100             Linux/i386
>0      short           0407            executable
>0      short           0410            pure executable
>0      short           0413            demand paged executable
>16     long            >0              not stripped
2       leshort         100             Linux/i386
>0      leshort         0407            executable
>0      leshort         0410            pure executable
>0      leshort         0413            demand paged executable
>16     lelong          >0              not stripped
>0      string          Jump            jump
# core dump file
216     long            0421            core file (Linux)
216     lelong          0421            core file (Linux)

M magic/Magdir/mmdf => magic/Magdir/mmdf +1 -1
@@ 1,1 1,1 @@
0	long		0x1010101	MMDF mailbox
0	string	\001\001\001\001	MMDF mailbox

M magic/Magdir/old/ar => magic/Magdir/old/ar +25 -1
@@ 62,5 62,29 @@
20	long		0xdca7c4fd	Rahul Dhesi's "zoo" archive
# ZIP archiver
0	string		PK		zip archive file 
>2	byte		>0		- version [%d
>4	byte		x		- version
>4	byte		10		1.0
>4	byte		20		2.0

2	string		-lh		LHarc archive data
>6	byte		x		type %c
>20	byte		x		- header level %d
# ARJ archive data from jason@jarthur.Claremont.EDU
0	leshort		0xea60		ARJ archive data
>5	byte		x		- version %d,
>8	byte		>0		flags:
>>8	byte		&0x04		multi-volume,
>>8	byte		&0x10		slash switched,
>>8	byte		&0x20		backup,
>34	string		x		original name: %s,
>7	byte		0		os: MS/DOS
>7	byte		1		os: PRIMOS
>7	byte		2		os: UNIX
>7	byte		3		os: Amiga
>7	byte		4		os: Macintosh
>7	byte		5		os: OS/2
>7	byte		6		os: Apple ][ GS
>7	byte		7		os: Atari ST
>7	byte		8		os: NeXT
>7	byte		9		os: VAX/VMS
>3	byte		>0		%d]

M magic/Magdir/old/sunraster => magic/Magdir/old/sunraster +6 -6
@@ 4,9 4,9 @@
# XXX - byte order?  What about the 386i?
#
0	string	\x59\xa6\x6a\x95	rasterfile
>4	long	>0		%d
>8	long	>0		x %d
>12	long	>0		x %d
>20	long	0		old format
>20	long	2		compressed
>24	long	1		with color map
>4	belong	>0		%d
>8	belong	>0		x %d
>12	belong	>0		x %d
>20	belong	0		old format
>20	belong	2		compressed
>24	belong	1		with color map

M magic/Magdir/pgp => magic/Magdir/pgp +3 -2
@@ 1,7 1,8 @@
#
# pgp (pretty good protection)
0       short           0x9900                  pgp key public ring
0       short           0x9501                  pgp key security ring
0       beshort         0x9900                  pgp key public ring
0       beshort         0x9501                  pgp key security ring
0       beshort         0x9500                  pgp key security ring
0       string          -----BEGIN\040PGP       pgp armored data
>15     string          PUBLIC\040KEY\040BLOCK- public key blocK
>15     string          MESSAGE-                message

M magic/Magdir/sequent => magic/Magdir/sequent +28 -8
@@ 1,10 1,30 @@
# Sequent information updated by Don Dwiggins <atsun!dwiggins>.
# For Sequent's multiprocessor systems (incomplete).
0       leshort   0x00ea        BALANCE NS32000 .o
0       leshort   0x10ea        BALANCE NS32000 executable (0 @ 0)
>16     lelong    >0            not stripped
0       leshort   0x20ea        BALANCE NS32000 executable (invalid @ 0)
>16     lelong    >0            not stripped
0       leshort   0x30ea        BALANCE NS32000 standalone executable
>16     lelong    >0            not stripped
# Also need info on Sequent "Symmetry" series...
0	lelong	0x00ea        	BALANCE NS32000 .o
>16	lelong	>0		not stripped
>124	lelong	>0		version %ld
0	lelong	0x10ea        	BALANCE NS32000 executable (0 @ 0)
>16	lelong  >0            	not stripped
>124	lelong	>0		version %ld
0	lelong	0x20ea        	BALANCE NS32000 executable (invalid @ 0)
>16	lelong  >0            	not stripped
>124	lelong	>0		version %ld
0	lelong	0x30ea        	BALANCE NS32000 standalone executable
>16	lelong  >0          	not stripped
>124	lelong	>0		version %ld
#
# Symmetry information added by Jason Merrill <jason@jarthur.claremont.edu>.
# Symmetry magic nums will not be reached if DOS COM comes before them;
# byte 0xeb is matched before these get a chance.
0	leshort	0x12eb		SYMMETRY i386 .o
>16	lelong	>0		not stripped
>124	lelong	>0		version %ld
0	leshort	0x22eb		SYMMETRY i386 executable (0 @ 0)
>16	lelong	>0		not stripped
>124	lelong	>0		version %ld
0	leshort	0x32eb		SYMMETRY i386 executable (invalid @ 0)
>16	lelong	>0		not stripped
>124	lelong	>0		version %ld
0	leshort	0x42eb		SYMMETRY i386 standalone executable
>16	lelong	>0		not stripped
>124	lelong	>0		version %ld

M magic/Magdir/sun => magic/Magdir/sun +9 -9
@@ 3,48 3,48 @@
# releases.
# (5.x uses ELF.)
#
0	belong&0777777	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	belong		>4096		dynamically linked executable
>0	byte		^0x80		executable
>16	belong		>0		not stripped
0	belong&0777777	0600410		sparc pure
0	belong&077777777	0600410		sparc pure
>0	byte		&0x80		dynamically linked executable
>0	byte		^0x80		executable
>16	belong		>0		not stripped
0	belong&0777777	0600407		sparc
0	belong&077777777	0600407		sparc
>0	byte		&0x80		dynamically linked executable
>0	byte		^0x80		executable
>16	belong		>0		not stripped

0	belong&0777777	0400413		mc68020 demand paged
0	belong&077777777	0400413		mc68020 demand paged
>0	byte		&0x80
>>20	belong		<4096		shared library
>>20	belong		=4096		dynamically linked executable
>>20	belong		>4096		dynamically linked executable
>16	belong		>0		not stripped
0	belong&0777777	0400410		mc68020 pure
0	belong&077777777	0400410		mc68020 pure
>0	byte		&0x80		dynamically linked executable
>0	byte		^0x80		executable
>16	belong		>0		not stripped
0	belong&0777777	0400407		mc68020
0	belong&077777777	0400407		mc68020
>0	byte		&0x80		dynamically linked executable
>0	byte		^0x80		executable
>16	belong		>0		not stripped

0	belong&0777777	0200413		mc68010 demand paged
0	belong&077777777	0200413		mc68010 demand paged
>0	byte		&0x80
>>20	belong		<4096		shared library
>>20	belong		=4096		dynamically linked executable
>>20	belong		>4096		dynamically linked executable
>16	belong		>0		not stripped
0	belong&0777777	0200410		mc68010 pure
0	belong&077777777	0200410		mc68010 pure
>0	byte		&0x80		dynamically linked executable
>0	byte		^0x80		executable
>16	belong		>0		not stripped
0	belong&0777777	0200407		mc68010
0	belong&077777777	0200407		mc68010
>0	byte		&0x80		dynamically linked executable
>0	byte		^0x80		executable
>16	belong		>0		not stripped

M magic/Magdir/tex => magic/Magdir/tex +17 -3
@@ 3,9 3,23 @@
#
# XXX - needs byte-endian stuff (big-endian and little-endian DVI?)
#
0	short	0173402	DVI File
# From <conklin@talisman.kaleida.com>

# Although we may know the offset of certain text fields in TeX DVI
# and font files, we can't use them reliably because they are not
# zero terminated. [but we do anyway, christos]
0	string		\367\002	TeX DVI file
>16	string	>\0	(%s)
0	short	0173531	Packed TeX Font
0	string		\367\203	TeX generic font data
0	string		\367\131	TeX packed font data
>4	string	>\0	(%s)
2	string	\000\022	Metafont Font Metric
0	string		\367\312	TeX virtual font data
0	string		This\ is\ TeX,	TeX transcript text	
0	string		This\ is\ METAFONT,	METAFONT transcript text

# There is no way to detect TeX Font Metric (*.tfm) files without
# breaking them apart and reading the data.  The following patterns
# match most *.tfm files generated by METAFONT or afm2tfm.
2	string		\000\021	TeX font metric data
2	string		\000\022	TeX font metric data
>34	string	>\0	(%s)

M magic/Magdir/vax => magic/Magdir/vax +2 -2
@@ 27,7 27,7 @@
#
0	leshort		0570		VAX COFF executable
>12	lelong		>0		not stripped
#>22	leshort		>0		- version %ld
>22	leshort		>0		- version %ld
0	leshort		0575		VAX COFF pure executable
>12	lelong		>0		not stripped
#>22	leshort		>0		- version %ld
>22	leshort		>0		- version %ld

M src/Makefile => src/Makefile +2 -2
@@ 1,6 1,6 @@
# Makefile for file(1) cmd. 
# Copyright (c) Ian F. Darwin 86/09/01 - see LEGAL.NOTICE.
# @(#)$Id: Makefile,v 1.36 1993/09/23 20:26:25 christos Exp $
# @(#)$Id: Makefile,v 1.37 1993/09/23 21:47:01 christos Exp $
#
# This software is not subject to any license of the American Telephone
# and Telegraph Company or of the Regents of the University of California.


@@ 100,7 100,7 @@ magic:		Magdir

ascmagic.o:	names.h

apprentice.o ascmagic.o file.o fsmagic.o print.o softmagic.o: file.h
compress.o apprentice.o ascmagic.o file.o fsmagic.o print.o softmagic.o: file.h

install:	file magic file.1 magic.4 $(BINDIR) $(MANCDIR) $(MANCDIR)
		cp file		$(BINDIR)/file

M src/PORTING => src/PORTING +2 -2
@@ 1,5 1,5 @@
Portability of the new file(1) command.
@(#) $Id: PORTING,v 1.10 1992/09/11 11:53:39 ian Exp $
@(#) $Id: PORTING,v 1.11 1993/09/23 21:47:23 christos Exp $

Read this file only if the program doesn't compile on your system.



@@ 72,5 72,5 @@ other problems you find porting to a UNIX system. I don't much
care about non-UNIX systems but will collect widely-used magic 
numbers for them as well as for UNIX systems.

Ian Darwin
Mark Moraes and Christos Zoulas
(address in README)

M src/file.c => src/file.c +3 -2
@@ 26,7 26,7 @@
 */
#ifndef	lint
static char *moduleid = 
	"@(#)$Id: file.c,v 1.27 1993/09/16 20:45:46 christos Exp $";
	"@(#)$Id: file.c,v 1.28 1993/09/23 21:47:01 christos Exp $";
#endif	/* lint */

#include <stdio.h>


@@ 201,7 201,8 @@ int wid;
	}

	if (wid > 0)
	     (void) printf("%s:%*s ", inname, wid - strlen(inname), "");
	     (void) printf("%s:%*s ", inname, 
			   (int) (wid - strlen(inname)), "");

	if (inname != stdname) {
	    /*

M src/file.h => src/file.h +2 -2
@@ 1,6 1,6 @@
/*
 * file.h - definitions for file(1) program
 * @(#)$Id: file.h,v 1.16 1993/09/23 20:26:25 christos Exp $
 * @(#)$Id: file.h,v 1.17 1993/09/23 21:47:01 christos Exp $
 *
 * Copyright (c) Ian F. Darwin, 1987.
 * Written by Ian F. Darwin.


@@ 114,7 114,7 @@ extern int lflag;		/* follow symbolic links?		*/
extern int optind;		/* From getopt(3)			*/
extern char *optarg;

#if !defined(__STDC__) || defined(sun)
#if !defined(__STDC__) || defined(sun) || defined(__sun__)
extern int sys_nerr;
extern char *sys_errlist[];
#define strerror(e) \

M src/softmagic.c => src/softmagic.c +9 -28
@@ 34,7 34,7 @@

#ifndef	lint
static char *moduleid = 
	"@(#)$Id: softmagic.c,v 1.21 1993/09/23 20:26:40 christos Exp $";
	"@(#)$Id: softmagic.c,v 1.22 1993/09/23 21:47:01 christos Exp $";
#endif	/* lint */

static int match	__P((unsigned char *, int));


@@ 102,7 102,7 @@ int nbytes;
	for (magindex = 0; magindex < nmagic; magindex++) {
		/* if main entry matches, print it... */
		if (!mget(&p, s, &magic[magindex], nbytes) ||
		    !mcheck(&p, &magic[magindex], nbytes)) {
		    !mcheck(&p, &magic[magindex])) {
			    /* 
			     * main entry didn't match,
			     * flush its continuations


@@ 133,7 133,7 @@ int nbytes;
					cont_level = magic[magindex].cont_level;
				}
				if (mget(&p, s, &magic[magindex], nbytes) &&
				    mcheck(&p, &magic[magindex], nbytes)) {
				    mcheck(&p, &magic[magindex])) {
					/*
					 * This continuation matched.
					 * Print its message, with


@@ 176,20 176,17 @@ struct magic *m;

  	switch (m->type) {
  	case BYTE:
 		(void) printf(m->desc,
 			      (m->reln & MASK) ? p->b & m->mask : p->b);
 		(void) printf(m->desc, p->b);
  		break;
  	case SHORT:
  	case BESHORT:
  	case LESHORT:
 		(void) printf(m->desc,
 			      (m->reln & MASK) ? p->h & m->mask : p->h);
 		(void) printf(m->desc, p->h);
  		break;
  	case LONG:
  	case BELONG:
  	case LELONG:
 		(void) printf(m->desc,
 			      (m->reln & MASK) ? p->l & m->mask : p->l);
 		(void) printf(m->desc, p->l);
  		break;
  	case STRING:
		if (m->reln == '=') {


@@ 261,7 258,7 @@ char *str;
int len;
{
	(void) fprintf(stderr, "mget @%d: ", offset);
	showstr(stderr, (char *) p, sizeof(p));
	showstr(stderr, (char *) str, len);
	(void) fputc('\n', stderr);
	(void) fputc('\n', stderr);
}


@@ 281,7 278,7 @@ int nbytes;
	memcpy(p, s + offset, sizeof(p));

	if (debug) {
		mdebug(offset, (char *) p, sizeof(p);
		mdebug(offset, (char *) p, sizeof(p));
		mdump(m);
	}



@@ 308,7 305,7 @@ int nbytes;
		memcpy(p, s + offset, sizeof(p));

		if (debug) {
			mdebug(offset, (char *) p, sizeof(p);
			mdebug(offset, (char *) p, sizeof(p));
			mdump(m);
		}



@@ 324,7 321,6 @@ union VALUETYPE* p;
struct magic *m;
{
	register long l = m->value.l;
	register long mask = m->mask;
	register long v;

	if ( (m->value.s[0] == 'x') && (m->value.s[1] == '\0') ) {


@@ 410,21 406,6 @@ struct magic *m;
			(void) fprintf(stderr, "((%x & %x) != %x) = %d\n",
				       v, l, l, (v & l) != l);
		return (v & l) != l;
	case MASK | '=':
		if (debug)
			(void) fprintf(stderr, "((%x & %x) == %x) = %d\n", 
				       v, mask, l, (v & mask) == l);
		return (v & mask) == l;
	case MASK | '>':
		if (debug)
			(void) fprintf(stderr, "((%x & %x) > %x) = %d\n", 
				       v, mask, l, (v & mask) > l);
		return (v & mask) > l;
	case MASK | '<':
		if (debug)
			(void) fprintf(stderr, "((%x & %x) < %x) = %d\n", 
				       v, mask, l, (v & mask) < l);
		return (v & mask) < l;
	default:
		error("mcheck: can't happen: invalid relation %d.\n", m->reln);
		return 0;/*NOTREACHED*/