rpm 4.18.0
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/rpmver.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
22extern "C" {
23#endif
24
25extern struct rpmMacroContext_s * rpmGlobalMacroContext;
26
27extern struct rpmMacroContext_s * rpmCLIMacroContext;
28
29extern const char * const RPMVERSION;
30
31extern const char * const rpmNAME;
32
33extern const char * const rpmEVR;
34
35extern const int rpmFLAGS;
36
37/* ==================================================================== */
49};
50#define RPM_MACHTABLE_COUNT 4
58int rpmReadConfigFiles(const char * file,
59 const char * target);
60
67void rpmGetArchInfo( const char ** name,
68 int * num);
69
75int rpmGetArchColor(const char *arch);
76
83void rpmGetOsInfo( const char ** name,
84 int * num);
85
99int rpmMachineScore(int type, const char * name);
100
106int rpmShowRC(FILE * fp);
107
112void rpmFreeRpmrc(void);
113
120int rpmVersionCompare(Header first, Header second);
121
135rpmRC headerCheck(rpmts ts, const void * uh, size_t uc, char ** msg);
136
145rpmRC 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
170#ifdef __cplusplus
171}
172#endif
173
174#endif /* H_RPMLIB */
rpmRC headerCheck(rpmts ts, const void *uh, size_t uc, char **msg)
Check header consistency, performing headerGetEntry() the hard way.
rpmRC rpmReadPackageFile(rpmts ts, FD_t fd, const char *fn, Header *hdrp)
Return package header from file handle, verifying digests/signatures.
rpmRC rpmReadHeader(rpmts ts, FD_t fd, Header *hdrp, char **msg)
Return checked and loaded header.
int rpmMachineScore(int type, const char *name)
Return arch/os score of a name.
int rpmShowRC(FILE *fp)
Display current rpmrc (and macro) configuration.
void rpmGetOsInfo(const char **name, int *num)
Return current os name and/or number.
int rpmGetArchColor(const char *arch)
Return color for an arch.
rpm_machtable_e
Build and install arch/os table identifiers.
Definition: rpmlib.h:44
int rpmReadConfigFiles(const char *file, const char *target)
Read macro configuration file(s) for a target.
void rpmGetArchInfo(const char **name, int *num)
Return current arch name and/or number.
void rpmFreeRpmrc(void)
Destroy rpmrc arch/os compatibility tables.
@ RPM_MACHTABLE_INSTARCH
Definition: rpmlib.h:45
@ RPM_MACHTABLE_INSTOS
Definition: rpmlib.h:46
@ RPM_MACHTABLE_BUILDOS
Definition: rpmlib.h:48
@ RPM_MACHTABLE_BUILDARCH
Definition: rpmlib.h:47
struct _FD_s * FD_t
RPM IO file descriptor type.
Definition: rpmtypes.h:99
struct rpmts_s * rpmts
The main types involved in transaction manipulation.
Definition: rpmtypes.h:63
enum rpmRC_e rpmRC
Package read return codes.
struct headerToken_s * Header
RPM header and data retrieval types.
Definition: rpmtypes.h:24
An rpm header carries all information about a package.
Structure(s) used for dependency tag sets.
RPM I/O API (Fd_t is RPM equivalent to libc's FILE)
struct rpmMacroContext_s * rpmGlobalMacroContext
const char *const rpmEVR
struct rpmMacroContext_s * rpmCLIMacroContext
const int rpmFLAGS
rpmRC rpmInstallSourcePackage(rpmts ts, FD_t fd, char **specFilePtr, char **cookie)
Install source package.
int rpmVersionCompare(Header first, Header second)
Compare headers to determine which header is "newer".
const char *const RPMVERSION
const char *const rpmNAME
Accessing RPM tags: values, types, ...