xfm_magic - xfm’s magic file format
xfm(1) and xfmtype(1) read files in this format to determine the mime
type of a file, which again is used to determine what command to open
The format of the configuration file is the same as the magic(5) with
the following additions and differences:
If a line starts with include: the rest of the line is treated as
filename of another magic file to be read and processed before
processing this file continues.
Included files can be include files again. Thus a user specific
to get the system wide xfm defaults and this file again
to get the system wide system defaults.
mode type field.
Similar to long type, but offset is ignored. The test is performed
against the st_mode field of the stat structure obtained using
stat(2) system call. This allows testing for directories, fifos ...
as well as for file permissions.
lmode type field.
Similar to mode type, but using lstat(2) instead of stat(2). This
allows testing for symbolic links.
regexp type field.
The value field must be a proper regular expression. The bytes
starting at offset are matched against it. If the match succeeds,
then a regsub(3) is performed on message yielding the final
message. If the type field is of the form regexp&nnn where nnn is a
positive number, then that number controls the amount of data
scanned for the matching, otherwise a compile defined value
(currently 256) is used.
long and short byte order.
xfmtype always reads longs and shorts using MSB-first order. This
makes configuration files portable to all architectures, but some
entries in original magic(5) files might be wrong.
If a line ends with a backslash character (\), it is continued with
the following line. The maximum length of a line is 1024 characters
(counting also characters in continuation lines).
Default location xfm(1) looks for a file of this format. (Note
that xfmtype(1) only reads files specified with -m on the
System wide default file if there is no user specific one.
xfm(1), xfmtype(1), file(1), magic(5), stat(2), lstat(2).
Copyright (c) 1995 CNM-US
Copyright (c) 1995 Juan D. Martin
Juan D. Martin (email@example.com)
(but modified heavily by Bernhard R. Link)