1/*
2 * Table of command-line options
3 *
4 * The first column specifies the short name, if any, or 0 if none.
5 * The second column specifies the long name.
6 * The third column specifies whether it takes a parameter.
7 * The fourth colums specifies whether is is marked as "default"
8 *      if POSIXLY_CORRECT is defined: 1,
9 *      if POSIXLY_CORRECT is not defined: 2.
10 * The fifth column is the documentation.
11 *
12 * N.B. The long options' order must correspond to the code in file.c,
13 * and OPTSTRING must be kept up-to-date with the short options.
14 * Pay particular attention to the numbers of long-only options in the
15 * switch statement!
16 */
17
18OPT_LONGONLY("help", 0, 0, "                 display this help and exit\n", OPT_HELP)
19OPT('v', "version", 0, 0, "              output version information and exit\n")
20OPT('m', "magic-file", 1, 0, " LIST      use LIST as a colon-separated list of magic\n"
21    "                               number files\n")
22OPT('z', "uncompress", 0, 0, "           try to look inside compressed files\n")
23OPT('Z', "uncompress-noreport", 0, 0, "  only print the contents of compressed files\n")
24OPT('b', "brief", 0, 0, "                do not prepend filenames to output lines\n")
25OPT('c', "checking-printout", 0, 0, "    print the parsed form of the magic file, use in\n"
26    "                               conjunction with -m to debug a new magic file\n"
27    "                               before installing it\n")
28OPT('e', "exclude", 1, 0, " TEST         exclude TEST from the list of test to be\n"
29    "                               performed for file. Valid tests are:\n"
30    "                               %o\n")
31OPT('f', "files-from", 1, 0, " FILE      read the filenames to be examined from FILE\n")
32OPT('F', "separator", 1, 0, " STRING     use string as separator instead of `:'\n")
33OPT('i', "mime", 0, 0, "                 output MIME type strings (--mime-type and\n"
34    "                               --mime-encoding)\n")
35OPT_LONGONLY("apple", 0, 0, "                output the Apple CREATOR/TYPE\n", OPT_APPLE)
36OPT_LONGONLY("extension", 0, 0, "            output a slash-separated list of extensions\n", OPT_EXTENSIONS)
37OPT_LONGONLY("mime-type", 0, 0, "            output the MIME type\n", OPT_MIME_TYPE)
38OPT_LONGONLY("mime-encoding", 0, 0, "        output the MIME encoding\n", OPT_MIME_ENCODING)
39OPT('k', "keep-going", 0, 0, "           don't stop at the first match\n")
40OPT('l', "list", 0, 0, "                 list magic strength\n")
41#ifdef S_IFLNK
42OPT('L', "dereference", 0, 1, "          follow symlinks")
43OPT('h', "no-dereference", 0, 2, "       don't follow symlinks")
44#endif
45OPT('n', "no-buffer", 0, 0, "            do not buffer output\n")
46OPT('N', "no-pad", 0, 0, "               do not pad output\n")
47OPT('0', "print0", 0, 0, "               terminate filenames with ASCII NUL\n")
48#if defined(HAVE_UTIME) || defined(HAVE_UTIMES)
49OPT('p', "preserve-date", 0, 0, "        preserve access times on files\n")
50#endif
51OPT('P', "parameter", 1, 0, "            set file engine parameter limits\n"
52    "                               indir        15 recursion limit for indirection\n"
53    "                               name         30 use limit for name/use magic\n"
54    "                               elf_notes   256 max ELF notes processed\n"
55    "                               elf_phnum   128 max ELF prog sections processed\n"
56    "                               elf_shnum 32768 max ELF sections processed\n")
57OPT('r', "raw", 0, 0, "                  don't translate unprintable chars to \\ooo\n")
58OPT('s', "special-files", 0, 0, "        treat special (block/char devices) files as\n"
59    "                             ordinary ones\n")
60OPT('S', "no-sandbox", 0, 0, "           disable system call sandboxing\n")
61OPT('C', "compile", 0, 0, "              compile file specified by -m\n")
62OPT('d', "debug", 0, 0, "                print debugging messages\n")
63