rpm  4.15.1
rpmlib.h
Go to the documentation of this file.
1 #ifndef H_RPMLIB
2 #define H_RPMLIB
3 
11 #include <rpm/rpmio.h>
12 #include <rpm/header.h>
13 #include <rpm/rpmtag.h>
14 #include <rpm/rpmds.h> /* XXX move rpmlib provides to rpmds instead */
15 #include <rpm/rpmpgp.h>
16 
17 #ifdef _RPM_4_4_COMPAT
18 #error RPM 4.4.x compatibility layer has been removed in RPM >= 4.14
19 #endif
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24 
25 extern struct rpmMacroContext_s * rpmGlobalMacroContext;
26 
27 extern struct rpmMacroContext_s * rpmCLIMacroContext;
28 
29 extern const char * const RPMVERSION;
30 
31 extern const char * const rpmNAME;
32 
33 extern const char * const rpmEVR;
34 
35 extern const int rpmFLAGS;
36 
37 /* ==================================================================== */
49 };
50 #define RPM_MACHTABLE_COUNT 4
58 int rpmReadConfigFiles(const char * file,
59  const char * target);
60 
67 void rpmGetArchInfo( const char ** name,
68  int * num);
69 
75 int rpmGetArchColor(const char *arch);
76 
83 void rpmGetOsInfo( const char ** name,
84  int * num);
85 
99 int rpmMachineScore(int type, const char * name);
100 
106 int rpmShowRC(FILE * fp);
107 
112 void rpmFreeRpmrc(void);
113 
120 int rpmVersionCompare(Header first, Header second);
121 
135 rpmRC headerCheck(rpmts ts, const void * uh, size_t uc, char ** msg);
136 
145 rpmRC rpmReadHeader(rpmts ts, FD_t fd, Header *hdrp, char ** msg);
146 
156  const char * fn, Header * hdrp);
157 
167  char ** specFilePtr,
168  char ** cookie);
169 
177 int rpmvercmp(const char * a, const char * b);
178 
179 #ifdef __cplusplus
180 }
181 #endif
182 
183 #endif /* H_RPMLIB */
const char *const RPMVERSION
rpm_machtable_e
Build and install arch/os table identifiers.
Definition: rpmlib.h:44
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.
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.