#include "system.h"#include <fnmatch.h>#include <fts.h>#include <rpmcli.h>#include "rpmps.h"#include "rpmdb.h"#include "rpmds.h"#include "rpmts.h"#include "debug.h"Go to the source code of this file.
Data Structures | |
| struct | ftsglob_s | 
| struct | Item_s | 
Typedefs | |
| typedef Item_s * | Item | 
Functions | |
| static Item | freeItem (Item item) | 
| static Item | newItem (void) | 
| static int | cmpItem (const void *a, const void *b) | 
| static void | freeItems (void) | 
| static int | ftsCachePrint (rpmts ts, FILE *fp) | 
| static int | ftsCacheUpdate (rpmts ts) | 
| static int | archOkay (const char *pkgArch) | 
| static int | osOkay (const char *pkgOs) | 
| static int | ftsStashLatest (FTSENT *fts, rpmts ts) | 
| static const char * | ftsInfoStr (int fts_info) | 
| static int | ftsPrint (FTS *ftsp, FTSENT *fts, rpmts ts) | 
| static void | initGlobs (rpmts ts, const char **argv) | 
| Initialize fts and glob structures.   | |
| int | main (int argc, char *const argv[]) | 
Variables | |
| const char * | program_name | 
| static int | _debug = 0 | 
| static int | noCache = 0 | 
| static char ** | ftsSet | 
| const char * | bhpath | 
| int | bhpathlen = 0 | 
| int | bhlvl = -1 | 
| static struct ftsglob_s * | bhglobs | 
| static int | nbhglobs = 5 | 
| static int | indent = 2 | 
| static Item * | items = NULL | 
| static int | nitems = 0 | 
| static const char * | ftsInfoStrings [] | 
| static rpmVSFlags | vsflags = 0 | 
| static struct poptOption | optionsTable [] | 
Definition in file rpmcache.c.
| static int archOkay | ( | const char * | pkgArch | ) |  [static] | 
        
Definition at line 165 of file rpmcache.c.
References RPM_MACHTABLE_INSTARCH, and rpmMachineScore().
| static int cmpItem | ( | const void * | a, | |
| const void * | b | |||
| ) |  [static] | 
        
Definition at line 67 of file rpmcache.c.
References rpmdsN(), and Item_s::this.
Referenced by ftsStashLatest().
Definition at line 52 of file rpmcache.c.
References _free(), Item_s::h, headerFree(), Item_s::path, rpmdsFree(), and Item_s::this.
Referenced by freeItems(), and ftsStashLatest().
| static void freeItems | ( | void | ) |  [static] | 
        
Definition at line 74 of file rpmcache.c.
References _free(), freeItem(), items, and nitems.
Referenced by main().
| static int ftsCachePrint | ( | rpmts | ts, | |
| FILE * | fp | |||
| ) |  [static] | 
        
| static int ftsCacheUpdate | ( | rpmts | ts | ) |  [static] | 
        
Definition at line 102 of file rpmcache.c.
References headerAddOrAppendEntry(), headerGetEntryMinMemory(), items, nitems, RMIL_CMDLINE, RPM_INT32_TYPE, RPM_STRING_ARRAY_TYPE, rpmdbAdd(), rpmdbFreeIterator(), rpmdbGetIteratorCount(), rpmDefineMacro(), RPMTAG_CACHECTIME, RPMTAG_CACHEPKGMTIME, RPMTAG_CACHEPKGPATH, RPMTAG_CACHEPKGSIZE, RPMTAG_SIGMD5, rpmtsCloseDB(), rpmtsGetRdb(), rpmtsGetTid(), rpmtsInitIterator(), and rpmtsOpenDB().
Referenced by main().
| static const char* ftsInfoStr | ( | int | fts_info | ) |  [static] | 
        
Definition at line 314 of file rpmcache.c.
References _debug, bhglobs, bhlvl, bhpath, bhpathlen, ftsglob_s::fnflags, FTS_D, FTS_DC, FTS_DEFAULT, FTS_DNR, FTS_DOT, FTS_DP, FTS_ERR, FTS_F, _ftsent::fts_info, FTS_INIT, _ftsent::fts_level, _ftsent::fts_name, _ftsent::fts_namelen, FTS_NS, FTS_NSOK, _ftsent::fts_parent, _ftsent::fts_path, _ftsent::fts_pathlen, Fts_set(), FTS_SKIP, FTS_SL, FTS_SLNONE, FTS_W, ftsInfoStr(), ftsStashLatest(), indent, nbhglobs, and ftsglob_s::patterns.
Referenced by main().
Definition at line 181 of file rpmcache.c.
References alloca(), archOkay(), cmpItem(), Fclose(), Ferror(), Fopen(), freeItem(), _ftsent::fts_accpath, _ftsent::fts_level, _ftsent::fts_name, _ftsent::fts_path, _ftsent::fts_statp, Item_s::h, headerFree(), headerGetEntry(), headerLink(), indent, items, Item_s::mtime, newItem(), nitems, osOkay(), Item_s::path, rpmdsCompare(), rpmdsFree(), rpmdsThis(), RPMMESS_DEBUG, rpmMessage, RPMRC_OK, rpmReadPackageFile(), RPMSENSE_EQUAL, RPMSENSE_LESS, RPMTAG_ARCH, RPMTAG_OS, RPMTAG_PROVIDENAME, RPMTAG_REQUIRENAME, Item_s::size, Stat(), Item_s::this, xrealloc(), and xstrdup().
Referenced by ftsPrint().
| static void initGlobs | ( | rpmts | ts, | |
| const char ** | argv | |||
| ) |  [static] | 
        
Initialize fts and glob structures.
| ts | transaction set | |
| argv | package names to match | 
Definition at line 441 of file rpmcache.c.
References _free(), bhglobs, bhpath, bhpathlen, ftsSet, Glob_pattern_p(), nbhglobs, ftsglob_s::patterns, rpmExpand(), RPMMESS_DEBUG, rpmMessage, stpcpy(), and xcalloc().
Referenced by main().
| int main | ( | int | argc, | |
| char *const | argv[] | |||
| ) | 
Definition at line 534 of file rpmcache.c.
References _, __progname, _free(), _RPMVSF_NODIGESTS, _RPMVSF_NOSIGNATURES, EXIT_FAILURE, freeItems(), Fts_close(), FTS_COMFOLLOW, FTS_LOGICAL, FTS_NOSTAT, Fts_open(), Fts_read(), ftsCachePrint(), ftsCacheUpdate(), ftsOpts, ftsPrint(), ftsSet, initGlobs(), noCache, optionsTable, rpmcliFini(), rpmcliInit(), rpmcliQueryFlags, rpmExpand(), rpmMkdirPath(), RPMRC_FAIL, RPMRC_OK, rpmtsCreate(), rpmtsFree(), rpmtsSetTid(), rpmtsSetVSFlags(), RPMVSF_NOHDRCHK, VERIFY_DIGEST, VERIFY_HDRCHK, VERIFY_SIGNATURE, and vsflags.
| static Item newItem | ( | void | ) |  [inline, static] | 
        
| static int osOkay | ( | const char * | pkgOs | ) |  [static] | 
        
int _debug = 0 [static]           | 
        
Definition at line 20 of file rpmcache.c.
| int bhlvl = -1 | 
| const char* bhpath | 
| int bhpathlen = 0 | 
const char* ftsInfoStrings[] [static]           | 
        
Initial value:
 {
    "UNKNOWN",
    "D",
    "DC",
    "DEFAULT",
    "DNR",
    "DOT",
    "DP",
    "ERR",
    "F",
    "INIT",
    "NS",
    "NSOK",
    "SL",
    "SLNONE",
    "W",
}
Definition at line 290 of file rpmcache.c.
char** ftsSet [static]           | 
        
int indent = 2 [static]           | 
        
Definition at line 39 of file rpmcache.c.
Definition at line 49 of file rpmcache.c.
Referenced by freeItems(), ftsCachePrint(), ftsCacheUpdate(), ftsStashLatest(), and rpmsxParse().
int nbhglobs = 5 [static]           | 
        
int nitems = 0 [static]           | 
        
Definition at line 50 of file rpmcache.c.
Referenced by freeItems(), fts_build(), Fts_open(), ftsCachePrint(), ftsCacheUpdate(), and ftsStashLatest().
int noCache = 0 [static]           | 
        
struct poptOption optionsTable[] [static]           | 
        
Initial value:
 {
 { "nolegacy", '\0', POPT_BIT_SET,      &vsflags, RPMVSF_NEEDPAYLOAD,
         "don't verify header+payload signature" , NULL },
 { "nocache", '\0', POPT_ARG_VAL,   &noCache, -1,
         "don't update cache database, only print package paths" , NULL },
 { NULL, '\0', POPT_ARG_INCLUDE_TABLE, rpmcliFtsPoptTable, 0,
         "File tree walk options:" ,
        NULL },
 { NULL, '\0', POPT_ARG_INCLUDE_TABLE, rpmcliAllPoptTable, 0,
         "Common options for all rpm modes and executables:" ,
        NULL },
    POPT_AUTOALIAS
    POPT_AUTOHELP
    POPT_TABLEEND
}
Definition at line 513 of file rpmcache.c.
| const char* program_name | 
Definition at line 6 of file rpmcache.c.
rpmVSFlags vsflags = 0 [static]           | 
        
Definition at line 511 of file rpmcache.c.
Referenced by build(), headerCheck(), main(), rpmcliQuery(), rpmcliVerify(), rpmErase(), rpmGraph(), rpmInstall(), rpmReadPackageFile(), rpmts_Create(), rpmts_init(), rpmts_SetVSFlags(), rpmtsRun(), and rpmtsVSFlags().
 1.5.2