#include "rpmhash.h"
#include "header.h"
Go to the source code of this file.
Data Structures | |
struct | fprintCacheEntry_s |
Finger print cache entry. More... | |
struct | fprintCache_s |
Finger print cache. More... | |
struct | fingerPrint_s |
Associates a trailing sub-directory and final base name with an existing directory finger print. More... | |
Defines | |
#define | fpFree(a) free((void *)(a).baseName) |
#define | FP_ENTRY_EQUAL(a, b) (((a)->dev == (b)->dev) && ((a)->ino == (b)->ino)) |
#define | FP_EQUAL(a, b) |
Typedefs | |
typedef fprintCache_s * | fingerPrintCache |
typedef fingerPrint_s | fingerPrint |
Functions | |
int | rpmdbFindFpList (rpmdb db, fingerPrint *fpList, dbiIndexSet *matchList, int numItems) |
Find fingerprint matches in database. | |
fingerPrintCache | fpCacheCreate (int sizeHint) |
Create finger print cache. | |
void | fpCacheFree (fingerPrintCache cache) |
Destroy finger print cache. | |
fingerPrint | fpLookup (fingerPrintCache cache, const char *dirName, const char *baseName, int scareMemory) |
Return finger print of a file path. | |
unsigned int | fpHashFunction (const void *key) |
Return hash value for a finger print. | |
int | fpEqual (const void *key1, const void *key2) |
Compare two finger print entries. | |
void | fpLookupList (fingerPrintCache cache, const char **dirNames, const char **baseNames, const int *dirIndexes, int fileCount, fingerPrint *fpList) |
Return finger prints of an array of file paths. | |
void | fpLookupHeader (fingerPrintCache cache, Header h, fingerPrint *fpList) |
Return finger prints of all file names in header. |
Definition in file fprint.h.
|
|
|
Value: ( \ FP_ENTRY_EQUAL((a).entry, (b).entry) && \ !strcmp((a).baseName, (b).baseName) && ( \ ((a).subDir == (b).subDir) || \ ((a).subDir && (b).subDir && !strcmp((a).subDir, (b).subDir)) \ ) \ ) Definition at line 61 of file fprint.h. Referenced by fpEqual(), and rpmdbFindByFile(). |
|
|
|
|
|
|
|
Create finger print cache.
Definition at line 13 of file fprint.c. References hashEqualityString(), hashFunctionString(), htCreate(), and xmalloc(). Referenced by rpmdbFindByFile(). |
|
Destroy finger print cache.
Definition at line 23 of file fprint.c. References fprintCache_s::ht, and htFree(). Referenced by rpmdbFindByFile(). |
|
Compare two finger print entries. exactly equivalent to FP_EQUAL macro.
Definition at line 209 of file fprint.c. References FP_EQUAL. |
|
Return hash value for a finger print. Hash based on dev and inode only!
Definition at line 191 of file fprint.c. References fingerPrint_s::baseName, fprintCacheEntry_s::dev, fingerPrint_s::entry, and fprintCacheEntry_s::ino. |
|
Return finger print of a file path.
Definition at line 185 of file fprint.c. References doLookup(). Referenced by rpmdbFindByFile(). |
|
Return finger prints of all file names in header.
Definition at line 247 of file fprint.c. References fpLookupList(), headerFreeData(), headerGetEntryMinMemory(), RPMTAG_BASENAMES, RPMTAG_DIRINDEXES, and RPMTAG_DIRNAMES. |
|
Return finger prints of an array of file paths.
Definition at line 227 of file fprint.c. References fingerPrint_s::baseName, and fingerPrint_s::subDir. Referenced by fpLookupHeader(). |