rpm  4.12.0.1
rpmlib.h
Go to the documentation of this file.
1 #ifndef H_RPMLIB
2 #define H_RPMLIB
3 
11 #include <popt.h>
12 
13 #include <rpm/rpmio.h>
14 #include <rpm/header.h>
15 #include <rpm/rpmtag.h>
16 #include <rpm/rpmds.h> /* XXX move rpmlib provides to rpmds instead */
17 #include <rpm/rpmpgp.h>
18 #ifdef _RPM_4_4_COMPAT
19 #include <rpm/rpmlegacy.h> /* legacy compat definitions if enabled */
20 #endif
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif
25 
26 extern struct rpmMacroContext_s * rpmGlobalMacroContext;
27 
28 extern struct rpmMacroContext_s * rpmCLIMacroContext;
29 
30 extern const char * const RPMVERSION;
31 
32 extern const char * const rpmNAME;
33 
34 extern const char * const rpmEVR;
35 
36 extern const int rpmFLAGS;
37 
38 /* ==================================================================== */
50 };
51 #define RPM_MACHTABLE_COUNT 4
59 int rpmReadConfigFiles(const char * file,
60  const char * target);
61 
68 void rpmGetArchInfo( const char ** name,
69  int * num);
70 
76 int rpmGetArchColor(const char *arch);
77 
84 void rpmGetOsInfo( const char ** name,
85  int * num);
86 
100 int rpmMachineScore(int type, const char * name);
101 
107 int rpmShowRC(FILE * fp);
108 
113 void rpmFreeRpmrc(void);
114 
121 int rpmVersionCompare(Header first, Header second);
122 
136 rpmRC headerCheck(rpmts ts, const void * uh, size_t uc, char ** msg);
137 
146 rpmRC rpmReadHeader(rpmts ts, FD_t fd, Header *hdrp, char ** msg);
147 
157  const char * fn, Header * hdrp);
158 
168  char ** specFilePtr,
169  char ** cookie);
170 
178 int rpmvercmp(const char * a, const char * b);
179 
180 #ifdef __cplusplus
181 }
182 #endif
183 
184 #endif /* H_RPMLIB */
const char *const RPMVERSION
rpm_machtable_e
Build and install arch/os table identifiers.
Definition: rpmlib.h:45
rpmRC rpmReadPackageFile(rpmts ts, FD_t fd, const char *fn, Header *hdrp)
Return package header from file handle, verifying digests/signatures.
struct rpmMacroContext_s * rpmGlobalMacroContext
int rpmVersionCompare(Header first, Header second)
Compare headers to determine which header is "newer".
int rpmMachineScore(int type, const char *name)
Return arch/os score of a name.
rpmRC rpmReadHeader(rpmts ts, FD_t fd, Header *hdrp, char **msg)
Return checked and loaded header.
struct rpmts_s * rpmts
The main types involved in transaction manipulation.
Definition: rpmtypes.h:63
struct rpmMacroContext_s * rpmCLIMacroContext
const char *const rpmNAME
struct _FD_s * FD_t
RPM IO file descriptor type.
Definition: rpmtypes.h:98
struct headerToken_s * Header
RPM header and data retrieval types.
Definition: rpmtypes.h:24
int rpmShowRC(FILE *fp)
Display current rpmrc (and macro) configuration.
const char * target
Definition: rpmspec.c:21
void rpmGetArchInfo(const char **name, int *num)
Return current arch name and/or number.
const char *const rpmEVR
int rpmvercmp(const char *a, const char *b)
Segmented string compare for version or release strings.
rpmRC rpmInstallSourcePackage(rpmts ts, FD_t fd, char **specFilePtr, char **cookie)
Install source package.
void rpmGetOsInfo(const char **name, int *num)
Return current os name and/or number.
const int rpmFLAGS
rpmRC headerCheck(rpmts ts, const void *uh, size_t uc, char **msg)
Check header consistency, performing headerGetEntry() the hard way.
void rpmFreeRpmrc(void)
Destroy rpmrc arch/os compatibility tables.
int rpmGetArchColor(const char *arch)
Return color for an arch.
enum rpmRC_e rpmRC
Package read return codes.