46 #define RPMFILE_STATE_MISSING -1
77 #define RPMFILE_SPOOK (RPMFILE_GHOST|RPMFILE_TYPED)
78 #define RPMFILE_ALL ~(RPMFILE_NONE)
85 #if defined(_RPMFI_INTERNAL)
110 const char ** fdigests;
114 const char ** flinks;
116 const char ** flangs;
136 const char ** fgroup;
148 const char ** fcontexts;
200 unsigned char * digests;
205 const char * pretrans;
207 const char * pretransprog;
209 const char * posttrans;
211 const char * posttransprog;
213 const char * verifyscript;
215 const char * verifyscriptprog;
223 unsigned long long archivePos;
224 unsigned long long archiveSize;
243 #define RPMFIMAGIC 0x09697923
245 #if defined(__LCLINT__)
257 #if !defined(_RPMFI_NOMETHODS)
271 #define rpmfiUnlink(_fi, _msg) \
272 ((rpmfi) rpmioUnlinkPoolItem((rpmioItem)(_fi), _msg, __FILE__, __LINE__))
283 #define rpmfiLink(_fi, _msg) \
284 ((rpmfi) rpmioLinkPoolItem((rpmioItem)(_fi), _msg, __FILE__, __LINE__))
610 #if defined(_RPMFI_INTERNAL)
690 #define rpmfiFree(_fi) \
691 ((rpmfi) rpmioFreePoolItem((rpmioItem)(_fi), __FUNCTION__, __FILE__, __LINE__))
761 void rpmfiBuildFContexts(
Header h,
776 void rpmfiBuildFSContexts(
Header h,
791 void rpmfiBuildREContexts(
Header h,
873 const char * oldPath,
const char * newPath)
rpmuint32_t rpmfiFFlags(rpmfi fi)
Return current file flags from file info set.
void * rpmfiInclude(const rpmfi fi)
Return file info include patterns.
int rpmfiSetHeader(rpmfi fi, Header h)
Link a header to a file info set.
rpmfileState rpmfiSetFState(rpmfi fi, rpmfileState fstate)
Set current file state in file info set.
int rpmfiDX(rpmfi fi)
Return current directory index from file info set.
rpmuint32_t rpmfiVFlags(rpmfi fi)
Return current file verify flags from file info set.
void rpmfiFpLookup(rpmfi fi, fingerPrintCache fpc)
rpmuint32_t rpmfiSetFFlags(rpmfi fi, rpmuint32_t FFlags)
Set current file flags in file info set.
rpmuint32_t rpmfiFDepends(rpmfi fi, const rpmuint32_t **fddictp)
Return current file depends dictionary from file info set.
rpmuint32_t rpmfiFNlink(rpmfi fi)
Return (calculated) current file nlink count from file info set.
int rpmfiSetFX(rpmfi fi, int fx)
Set current file index in file info set.
#define rpmfiUnlink(_fi, _msg)
size_t rpmfiFNMaxLen(rpmfi fi)
Return maximum file name length from file info set.
void * rpmfiFNBF(rpmfi fi)
Return FN Bloom filter from file info set.
rpmuint16_t rpmfiFRdev(rpmfi fi)
Return current file rdev from file info set.
const char * rpmfiFN(rpmfi fi)
Return current file name from file info set.
unsigned short rpmuint16_t
int rpmfiNInclude(const rpmfi fi)
Return no.
int rpmfiDecideFate(const rpmfi ofi, rpmfi nfi, int skipMissing)
Return file disposition.
const char * rpmfiFUser(rpmfi fi)
Return current file owner from file info set.
const char * rpmfiFGroup(rpmfi fi)
Return current file group from file info set.
rpmfi rpmfiNew(const void *_ts, Header h, rpmTag tagN, int flags)
Create and load a file info set.
rpmuint32_t rpmfiFColor(rpmfi fi)
Return current file color bits from file info set.
const char * rpmfiBN(rpmfi fi)
Return current base name from file info set.
int rpmfiFC(rpmfi fi)
Return file count from file info set.
rpmuint32_t rpmfiFSize(rpmfi fi)
Return current file size from file info set.
unsigned char rpmuint8_t
Private int typedefs to avoid C99 portability issues.
rpmFileTypes_e
File types.
struct fingerPrint_s * rpmfiFpsIndex(rpmfi fi, int ix)
rpmuint32_t rpmfiSetVFlags(rpmfi fi, rpmuint32_t VFlags)
Set current file verify flags in file info set.
const char * rpmfiTypeString(rpmfi fi)
Return formatted string representation of package disposition.
int rpmfiNextD(rpmfi fi)
Return next directory iterator index.
const char * rpmfiDN(rpmfi fi)
Return current directory name from file info set.
rpmuint16_t rpmfiFMode(rpmfi fi)
Return current file mode from file info set.
int rpmfiAddRelocation(rpmRelocation *relp, int *nrelp, const char *oldPath, const char *newPath)
Add relocation element to array.
int rpmfiIsSource(rpmfi fi)
Return source rpm marker from file info set.
void * rpmfiBloomFN(const rpmfi fi)
Return file path Bloom filter.
rpmuint32_t rpmfiFMtime(rpmfi fi)
Return current file modify time from file info set.
Identify a file name path by a unique "finger print".
rpmRelocation rpmfiFreeRelocations(rpmRelocation relocs)
Free relocation array.
enum rpmFileTypes_e rpmFileTypes
File types.
enum rpmfileAttrs_e rpmfileAttrs
File Attributes.
Associates a trailing sub-directory and final base name with an existing directory finger print...
int rpmfiNext(rpmfi fi)
Return next file iterator index.
rpmfileAttrs_e
File Attributes.
int rpmfiDC(rpmfi fi)
Return directory count from file info set.
void * rpmfiOpendir(rpmfi fi, const char *name)
Return directory stream onto file info set.
rpmfi rpmfiInit(rpmfi fi, int fx)
Initialize file iterator index.
rpmfileState_e
File States (when installed).
enum rpmfileState_e rpmfileState
File States (when installed).
const char * rpmfiFClass(rpmfi fi)
Return current file class from file info set.
int rpmfiNExclude(const rpmfi fi)
Return no.
const char * rpmfiFLink(rpmfi fi)
Return current file linkto (i.e.
void rpmfiBuildFDeps(Header h, rpmTag tagN, const char ***fdepsp, rpmuint32_t *fcp)
Retrieve per-file dependencies from header.
struct fprintCache_s * fingerPrintCache
void * rpmfiExclude(const rpmfi fi)
Return file info exclude patterns.
rpmfileState rpmfiFState(rpmfi fi)
Return current file state from file info set.
rpmuint32_t rpmfiColor(rpmfi fi)
Return union of all file color bits from file info set.
rpmfi rpmfiInitD(rpmfi fi, int dx)
Initialize directory iterator index.
rpmRelocation rpmfiDupeRelocations(rpmRelocation relocs, int *nrelocsp)
Duplicate a relocation array.
const unsigned char * rpmfiDigest(rpmfi fi, int *algop, size_t *lenp)
Return current file (binary) digest from file info set.
int rpmfiCompare(const rpmfi afi, const rpmfi bfi)
Return file info comparison.
void rpmfiBuildFClasses(Header h, const char ***fclassp, rpmuint32_t *fcp)
Retrieve file classes from header.
struct rpmfi_s * rpmfi
File info tag sets from a header, so that a header can be discarded early.
rpmuint32_t rpmfiFInode(rpmfi fi)
Return current file inode from file info set.
int rpmfiStat(rpmfi fi, const char *path, struct stat *st)
Return lstat(2) data of path from file info set.
const char * rpmfiFContext(rpmfi fi)
Return current file security context from file info set.
#define rpmfiLink(_fi, _msg)
int rpmfiFStat(rpmfi fi, struct stat *st)
Return current stat(2) data from file info set.
int rpmfiFX(rpmfi fi)
Return current file index from file info set.
int rpmfiSetDX(rpmfi fi, int dx)
Set current directory index in file info set.