#include "magic.h"Go to the source code of this file.
Data Structures | |
| struct | rpmfc_s |
| struct | rpmfcTokens_s |
Defines | |
| #define | RPMFC_ELF (RPMFC_ELF32|RPMFC_ELF64) |
Typedefs | |
| typedef rpmfc_s * | rpmfc |
| typedef enum FCOLOR_e | FCOLOR_t |
| typedef rpmfcTokens_s * | rpmfcToken |
Enumerations | |
| enum | FCOLOR_e { RPMFC_BLACK = 0, RPMFC_ELF32 = (1 << 0), RPMFC_ELF64 = (1 << 1), RPMFC_MODULE = (1 << 7), RPMFC_EXECUTABLE = (1 << 8), RPMFC_SCRIPT = (1 << 9), RPMFC_TEXT = (1 << 10), RPMFC_DATA = (1 << 11), RPMFC_DOCUMENT = (1 << 12), RPMFC_STATIC = (1 << 13), RPMFC_NOTSTRIPPED = (1 << 14), RPMFC_COMPRESSED = (1 << 15), RPMFC_DIRECTORY = (1 << 16), RPMFC_SYMLINK = (1 << 17), RPMFC_DEVICE = (1 << 18), RPMFC_LIBRARY = (1 << 19), RPMFC_ARCHIVE = (1 << 20), RPMFC_FONT = (1 << 21), RPMFC_IMAGE = (1 << 22), RPMFC_MANPAGE = (1 << 23), RPMFC_PERL = (1 << 24), RPMFC_JAVA = (1 << 25), RPMFC_PYTHON = (1 << 26), RPMFC_PHP = (1 << 27), RPMFC_TCL = (1 << 28), RPMFC_MONO = (1 << 6), RPMFC_WHITE = (1 << 29), RPMFC_INCLUDE = (1 << 30), RPMFC_ERROR = (1 << 31) } |
Functions | |
| int | rpmfcExec (ARGV_t av, StringBuf sb_stdin, StringBuf *sb_stdoutp, int failnonzero) |
| Return helper output. | |
| int | rpmfcColoring (const char *fmstr) |
| Return file color given file(1) string. | |
| void | rpmfcPrint (const char *msg, rpmfc fc, FILE *fp) |
| Print results of file classification. | |
| rpmfc | rpmfcFree (rpmfc fc) |
| Destroy a file classifier. | |
| rpmfc | rpmfcNew (void) |
| Create a file classifier. | |
| int | rpmfcClassify (rpmfc fc, ARGV_t argv, int16_t *fmode) |
| Build file class dictionary and mappings. | |
| int | rpmfcApply (rpmfc fc) |
| Build file/package dependency dictionary and mappings. | |
| int | rpmfcGenerateDepends (const Spec spec, Package pkg) |
| Generate package dependencies. | |
Variables | |
| int | _rpmfc_debug |
| #define RPMFC_ELF (RPMFC_ELF32|RPMFC_ELF64) |
| typedef struct rpmfcTokens_s* rpmfcToken |
| enum FCOLOR_e |
| int rpmfcApply | ( | rpmfc | fc | ) |
Build file/package dependency dictionary and mappings.
| fc | file classifier |
Definition at line 1200 of file rpmfc.c.
References argiAdd(), argiCount(), argvCount(), rpmfcApplyTbl_s::colormask, rpmfc_s::ddict, rpmfc_s::ddictx, rpmfc_s::fcolor, rpmfc_s::fddictn, rpmfc_s::fddictx, rpmfc_s::fn, rpmfcApplyTbl_s::func, rpmfc_s::ix, rpmfc_s::provides, rpmfc_s::requires, rpmdsFind(), rpmdsFree(), rpmdsSingle(), RPMFC_PYTHON, rpmfcApplyTable, RPMTAG_PROVIDENAME, RPMTAG_REQUIRENAME, rpmfc_s::skipProv, rpmfc_s::skipReq, and ARGI_s::vals.
Referenced by main(), and rpmfcGenerateDepends().
Build file class dictionary and mappings.
| fc | file classifier | |
| argv | files to classify | |
| fmode | files mode_t array (or NULL) |
| int rpmfcColoring | ( | const char * | fmstr | ) |
Return file color given file(1) string.
| fmstr | file(1) string |
Definition at line 527 of file rpmfc.c.
References rpmfcTokens_s::colors, RPMFC_BLACK, RPMFC_INCLUDE, rpmfcTokens, and rpmfcTokens_s::token.
Referenced by rpmfcClassify().
Return helper output.
| av | helper argv (with possible macros) | |
| sb_stdin | helper input |
| *sb_stdoutp | helper output |
| failnonzero | IS non-zero helper exit status a failure? |
Definition at line 206 of file rpmfc.c.
References _free(), argvAppend(), argvFree(), freeStringBuf(), getOutputFrom(), getStringBuf(), rpmExpand(), and rpmfcExpandAppend().
Referenced by checkFiles(), rpmfcGenerateDependsHelper(), and rpmfcHelper().
Destroy a file classifier.
| fc | file classifier |
Definition at line 619 of file rpmfc.c.
References _free(), argiFree(), argvFree(), rpmfc_s::cdict, rpmfc_s::ddict, rpmfc_s::ddictx, rpmfc_s::fcdictx, rpmfc_s::fcolor, rpmfc_s::fddictn, rpmfc_s::fddictx, rpmfc_s::fn, freeStringBuf(), rpmfc_s::provides, rpmfc_s::requires, rpmdsFree(), rpmfc_s::sb_java, rpmfc_s::sb_perl, and rpmfc_s::sb_python.
Referenced by main(), and rpmfcGenerateDepends().
Generate package dependencies.
| spec | spec file control | |
| pkg | package control |
Definition at line 1624 of file rpmfc.c.
References _free(), _rpmfc_debug, argiCount(), argiData(), argvCount(), argvData(), argvFree(), Package_s::autoProv, Package_s::autoReq, rpmfc_s::brlen, Spec_s::buildRootURL, rpmfc_s::cdict, Package_s::cpioList, rpmfc_s::ddictx, Package_s::ds, rpmfc_s::fcdictx, rpmfc_s::fcolor, rpmfc_s::fddictn, rpmfc_s::fddictx, rpmfc_s::fknown, Package_s::header, headerAddEntry(), headerRemoveEntry(), DepMsg_s::msg, rpmfc_s::nfiles, printDeps(), rpmfc_s::provides, rpmfc_s::requires, RPM_INT32_TYPE, RPM_STRING_ARRAY_TYPE, rpmdsCount(), rpmdsEVR(), rpmdsFree(), rpmdsMerge(), rpmdsN(), rpmdsNew(), rpmdsSingle(), rpmExpandNumeric(), rpmfcApply(), rpmfcClassify(), rpmfcFree(), rpmfcGenerateDependsHelper(), rpmfcNew(), rpmfcPrint(), rpmfiFC(), rpmfiFFlags(), rpmfiFMode(), rpmfiFN(), rpmfiInit(), RPMFILE_CONFIG, rpmfiNext(), RPMSENSE_CONFIG, RPMSENSE_EQUAL, RPMTAG_CLASSDICT, RPMTAG_DEPENDSDICT, RPMTAG_FILECLASS, RPMTAG_FILECOLORS, RPMTAG_FILEDEPENDSN, RPMTAG_FILEDEPENDSX, RPMTAG_PROVIDEFLAGS, RPMTAG_PROVIDENAME, RPMTAG_PROVIDEVERSION, RPMTAG_REQUIREFLAGS, RPMTAG_REQUIRENAME, RPMTAG_REQUIREVERSION, rpmfc_s::skipProv, rpmfc_s::skipReq, rpmfc_s::tracked, xcalloc(), and xstrdup().
Referenced by processBinaryFiles().
| rpmfc rpmfcNew | ( | void | ) |
Create a file classifier.
Definition at line 643 of file rpmfc.c.
References xcalloc().
Referenced by main(), and rpmfcGenerateDepends().
| void rpmfcPrint | ( | const char * | msg, | |
| rpmfc | fc, | |||
| FILE * | fp | |||
| ) |
Print results of file classification.
| msg | message prefix (NULL for none) | |
| fc | file classifier | |
| fp | output file handle (NULL for stderr) |
Definition at line 542 of file rpmfc.c.
References rpmfc_s::cdict, rpmfc_s::ddictx, rpmfc_s::fcdictx, rpmfc_s::fcolor, rpmfc_s::fddictn, rpmfc_s::fddictx, rpmfc_s::fn, rpmfc_s::nfiles, rpmfc_s::provides, rpmfc_s::requires, rpmdsCount(), rpmdsDNEVR(), rpmdsNext(), rpmdsSetIx(), RPMFC_BLACK, and ARGI_s::vals.
Referenced by main(), and rpmfcGenerateDepends().
| int _rpmfc_debug |
1.5.2