10 #include <rpm/rpmtypes.h>
11 #include <rpm/header.h> /* for headerGetFlags typedef, duh.. */
12 #include "lib/rpmfs.h"
14 typedef const struct headerFmt_s * headerFmt;
22 int rpmIsKnownArch(const char *name);
25 char * rpmVerifyString(uint32_t verifyResult, const char *pad);
28 char * rpmFFlagsString(uint32_t fflags, const char *pad);
30 typedef int (*headerTagTagFunction) (Header h, rpmtd td, headerGetFlags hgflags);
33 headerTagTagFunction rpmHeaderTagFunc(rpmTagVal tag);
36 headerFmt rpmHeaderFormatByName(const char *fmt);
39 headerFmt rpmHeaderFormatByValue(rpmtdFormats fmt);
42 char * rpmHeaderFormatCall(headerFmt fmt, rpmtd td);
45 int headerFindSpec(Header h);
48 * Relocate files in header.
49 * @todo multilib file dispositions need to be checked.
50 * @param relocs relocations
51 * @param numRelocations number of relocations
52 * @param fs file state set
53 * @param h package header to relocate
56 void rpmRelocateFileList(rpmRelocation *relocs, int numRelocations, rpmfs fs, Header h);
59 int rpmRelocateSrpmFileList(Header h, const char *rootDir);
62 void rpmRelocationBuild(Header h, rpmRelocation *rawrelocs,
63 int *rnrelocs, rpmRelocation **rrelocs, uint8_t **rbadrelocs);