Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages  

rpmdb/fprint.c File Reference

More...

#include "system.h"
#include <rpmdb.h>
#include <rpmmacro.h>
#include "fprint.h"
#include "debug.h"

Go to the source code of this file.

Functions

fingerPrintCache fpCacheCreate (int sizeHint)
 Create finger print cache. More...

void fpCacheFree (fingerPrintCache cache)
 Destroy finger print cache. More...

const struct fprintCacheEntry_scacheContainsDirectory (fingerPrintCache cache, const char *dirName)
 Find directory name entry in cache. More...

fingerPrint doLookup (fingerPrintCache cache, const char *dirName, const char *baseName, int scareMemory)
 Return finger print of a file path. More...

fingerPrint fpLookup (fingerPrintCache cache, const char *dirName, const char *baseName, int scareMemory)
 Return finger print of a file path. More...

unsigned int fpHashFunction (const void *key)
 Return hash value for a finger print. More...

int fpEqual (const void *key1, const void *key2)
 Compare two finger print entries. More...

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. More...

void fpLookupHeader (fingerPrintCache cache, Header h, fingerPrint *fpList)
 Return finger prints of all file names in header. More...


Detailed Description

Definition in file fprint.c.


Function Documentation

const struct fprintCacheEntry_s * cacheContainsDirectory ( fingerPrintCache cache,
const char * dirName ) [static]
 

Find directory name entry in cache.

Parameters:
cache   pointer to fingerprint cache
dirName   string to locate in cache
Returns:
pointer to directory name entry (or NULL if not found).

Definition at line 35 of file fprint.c.

Referenced by doLookup().

fingerPrint doLookup ( fingerPrintCache cache,
const char * dirName,
const char * baseName,
int scareMemory ) [static]
 

Return finger print of a file path.

Parameters:
cache   pointer to fingerprint cache
dirName   leading directory name of path
baseName   file name of path
scareMemory  
Returns:
pointer to the finger print associated with a file path.

Definition at line 55 of file fprint.c.

Referenced by fpLookup(), and fpLookupList().

fingerPrintCache fpCacheCreate ( int sizeHint )
 

Create finger print cache.

Parameters:
sizeHint   number of elements expected
Returns:
pointer to initialized fingerprint cache

Definition at line 13 of file fprint.c.

void fpCacheFree ( fingerPrintCache cache )
 

Destroy finger print cache.

Parameters:
cache   pointer to fingerprint cache

Definition at line 23 of file fprint.c.

int fpEqual ( const void * key1,
const void * key2 )
 

Compare two finger print entries.

exactly equivalent to FP_EQUAL macro.

Parameters:
key1   finger print 1
key2   finger print 2
Returns:
result of comparing key1 and key2

Definition at line 209 of file fprint.c.

unsigned int fpHashFunction ( const void * key )
 

Return hash value for a finger print.

Hash based on dev and inode only!

Parameters:
key   pointer to finger print entry
Returns:
hash value

Definition at line 191 of file fprint.c.

fingerPrint fpLookup ( fingerPrintCache cache,
const char * dirName,
const char * baseName,
int scareMemory )
 

Return finger print of a file path.

Parameters:
cache   pointer to fingerprint cache
dirName   leading directory name of file path
baseName   base name of file path
scareMemory  
Returns:
pointer to the finger print associated with a file path.

Definition at line 185 of file fprint.c.

void fpLookupHeader ( fingerPrintCache cache,
Header h,
fingerPrint * fpList )
 

Return finger prints of all file names in header.

@warning: scareMemory is assumed!

Parameters:
cache   pointer to fingerprint cache
h   package header
Return values:
fpList   pointer to array of finger prints

Definition at line 247 of file fprint.c.

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.

@warning: scareMemory is assumed!

Parameters:
cache   pointer to fingerprint cache
dirNames   directory names
baseNames   file base names
dirIndexes   index into dirNames for each baseNames
fileCount   number of file entries
Return values:
fpList   pointer to array of finger prints

Definition at line 227 of file fprint.c.


Generated at Fri Feb 15 10:36:04 2002 for rpm by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001