rpmds.h File Reference
RPMDS Dependency Set API.

Structure(s) used for dependency tag sets. More...

`#include "rpmevr.h"`
`#include "rpmns.h"`
`#include "rpmps.h"`
Include dependency graph for rpmds.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Macros

#define | _RPMNS_INTERNAL

## Variables

int | _rpmds_debug
const char * | _sysinfo_path
int | _rpmds_nopromote

## RPMDS

#define | rpmdsUnlink(_ds, _msg) ((rpmds)rpmioUnlinkPoolItem((rpmioItem)(_ds), _msg, __FILE__, __LINE__))
#define | rpmdsLink(_ds, _msg) ((rpmds)rpmioLinkPoolItem((rpmioItem)(_ds), _msg, __FILE__, __LINE__))
#define | rpmdsFree(_ds) ((rpmds)rpmioFreePoolItem((rpmioItem)(_ds), __FUNCTION__, __FILE__, __LINE__))
#define | RPMELF_FLAG_SKIPPROVIDES 0x1 /*<! rpmdsELF: skip provides */
#define | RPMELF_FLAG_SKIPREQUIRES 0x2 /*<! rpmdsELF: skip requires */
const char * | _cpuinfo_path
rpmds | rpmdsUnlink (rpmds ds, const char *msg)
| Unreference a dependency set instance. More...
rpmds | rpmdsLink (rpmds ds, const char *msg)
| Reference a dependency set instance. More...
rpmds | rpmdsFree (rpmds ds)
| Destroy a dependency set. More...
rpmds | rpmdsNew (Header h, rpmTag tagN, int flags)
| Create and load a dependency set. More...
const char * | rpmdsNewN (rpmds ds)
| Return N string, expanded if necessary. More...
char * | rpmdsNewDNEVR (const char *dspfx, rpmds ds)
| Return new formatted dependency string. More...
rpmds | rpmdsThis (Header h, rpmTag tagN, evrFlags Flags)
| Create, load and initialize a dependency for this header. More...
rpmds | rpmdsSingle (rpmTag tagN, const char *N, const char *EVR, evrFlags Flags)
| Create, load and initialize a dependency set of size 1. More...
int | rpmdsCount (const rpmds ds)
| Return dependency set count. More...
int | rpmdsIx (const rpmds ds)
| Return dependency set index. More...
int | rpmdsSetIx (rpmds ds, int ix)
| Set dependency set index. More...
const char * | rpmdsDNEVR (const rpmds ds)
| Return current formatted dependency string. More...
const char * | rpmdsN (rpmds ds)
| Return current dependency name. More...
const char * | rpmdsEVR (const rpmds ds)
| Return current dependency epoch-version-release. More...
evrFlags | rpmdsFlags (const rpmds ds)
| Return current dependency flags. More...
rpmTag | rpmdsTagN (const rpmds ds)
| Return current dependency type. More...
const char * | rpmdsA (const rpmds ds)
| Return current dependency arch. More...
time_t | rpmdsBT (const rpmds ds)
| Return dependency build time. More...
time_t | rpmdsSetBT (const rpmds ds, time_t BT)
| Set dependency build time. More...
nsType | rpmdsNSType (const rpmds ds)
| Return dependency class type. More...
int | rpmdsNoPromote (const rpmds ds)
| Return current "Don't promote Epoch:" flag. More...
int | rpmdsSetNoPromote (rpmds ds, int nopromote)
| Set "Don't promote Epoch:" flag. More...
void * | rpmdsSetEVRparse (rpmds ds, int(*EVRparse)(const char *everstr, EVR_t evr))
| Set EVR parsing function. More...
void * | rpmdsSetEVRcmp (rpmds ds, int(*EVRcmp)(const char *a, const char *b))
| Set EVR comparison function. More...
rpmuint32_t | rpmdsColor (const rpmds ds)
| Return current dependency color. More...
rpmuint32_t | rpmdsSetColor (const rpmds ds, rpmuint32_t color)
| Set current dependency color. More...
void * | rpmdsExclude (const rpmds ds)
| Return dependency exclude patterns. More...
int | rpmdsNExclude (const rpmds ds)
| Return no. More...
void * | rpmdsInclude (const rpmds ds)
| Return dependency include patterns. More...
int | rpmdsNInclude (const rpmds ds)
| Return no. More...
rpmuint32_t | rpmdsRefs (const rpmds ds)
| Return current dependency file refs. More...
rpmuint32_t | rpmdsSetRefs (const rpmds ds, rpmuint32_t refs)
| Set current dependency file refs. More...
rpmint32_t | rpmdsResult (const rpmds ds)
| Return current dependency comparison result. More...
rpmint32_t | rpmdsSetResult (const rpmds ds, rpmint32_t result)
| Set current dependency comparison result. More...
void | rpmdsNotify (rpmds ds, const char *where, int rc)
| Notify of results of dependency match. More...
int | rpmdsNext (rpmds ds)
| Return next dependency set iterator index. More...
rpmds | rpmdsInit (rpmds ds)
| Initialize dependency set iterator. More...
int | rpmdsFind (rpmds ds, const rpmds ods)
| Find a dependency set element using binary search. More...
int | rpmdsMerge (rpmds *dsp, rpmds ods)
| Merge a dependency set maintaining (N,EVR,Flags) sorted order. More...
int | rpmdsSearch (rpmds ds, rpmds ods)
| Search a sorted dependency set for an element that overlaps. More...
int | rpmdsCpuinfo (rpmds *dsp, const char *fn)
| Load /proc/cpuinfo provides into a dependency set. More...
int | rpmdsRpmlib (rpmds *dsp, void *tblp)
| Load rpmlib provides into a dependency set. More...
int | rpmdsSysinfo (rpmPRCO PRCO, const char *fn)
| Load sysinfo dependencies into a dependency set. More...
int | rpmdsGetconf (rpmds *dsp, const char *path)
| Load getconf provides into a dependency set. More...
int | rpmdsMergePRCO (void *context, rpmds ds)
| Merge provides/requires/conflicts/obsoletes dependencies. More...
rpmPRCO | rpmdsFreePRCO (rpmPRCO PRCO)
| Free dependency set(s) container. More...
rpmPRCO | rpmdsNewPRCO (Header h)
| Create dependency set(s) container. More...
rpmds | rpmdsFromPRCO (rpmPRCO PRCO, rpmTag tagN)
| Retrieve a dependency set from container. More...
int | rpmdsELF (const char *fn, int flags, int(*add)(void *context, rpmds ds), void *context)
| Extract ELF dependencies from a file. More...
int | rpmdsLdconfig (rpmPRCO PRCO, const char *fn)
| Load /etc/ld.so.cache provides into a dependency set. More...
int | rpmdsUname (rpmds *dsp, const struct utsname *un)
int | rpmdsPipe (rpmds *dsp, rpmTag tagN, const char *cmd)
| Load provides from a pipe into a dependency set. More...
int | rpmdsCompare (const rpmds A, const rpmds B)
| Compare two versioned dependency ranges, looking for overlap. More...
int | rpmdsMatch (const rpmds A, rpmds B)
| Compare A against every member of B, looking for 1st match. More...
void | rpmdsProblem (rpmps ps, const char *pkgNEVR, const rpmds ds, const fnpyKey *suggestedKeys, int adding)
| Report a Requires: or Conflicts: dependency problem. More...
int | rpmdsAnyMatchesDep (const Header h, const rpmds req, int nopromote)
| Compare package provides dependencies from header with a single dependency. More...
int | rpmdsNVRMatchesDep (const Header h, const rpmds req, int nopromote)
| Compare package name-version-release from header with a single dependency. More...
int | rpmdsNegateRC (const rpmds ds, int rc)
| Negate return code for negated comparisons. More...
const char * | rpmdsType (const rpmds ds)
| Return current dependency type name. More...
static int | rpmdsPrint (rpmds ds, FILE *fp)
| Print current dependency set contents. More...
static int | rpmdsPrintResults (rpmds ds, FILE *fp)
| Print current dependency set results. More...
static int | rpmdsPrintClosure (rpmds P, rpmds R, FILE *fp)
| Check Provides: against Requires: and print closure results. More...

## Detailed Description

Structure(s) used for dependency tag sets.

Definition in file rpmds.h.

## Macro Definition Documentation

#define _RPMNS_INTERNAL

Definition at line 10 of file rpmds.h.

#define rpmdsFree | ( |  | _ds | ) | ((rpmds)rpmioFreePoolItem((rpmioItem)(_ds), __FUNCTION__, __FILE__, __LINE__))

Definition at line 168 of file rpmds.h.

#define rpmdsLink | ( |  | _ds,
|  |  | _msg
| ) |  | ((rpmds)rpmioLinkPoolItem((rpmioItem)(_ds), _msg, __FILE__, __LINE__))

Definition at line 157 of file rpmds.h.

#define rpmdsUnlink | ( |  | _ds,
|  |  | _msg
| ) |  | ((rpmds)rpmioUnlinkPoolItem((rpmioItem)(_ds), _msg, __FILE__, __LINE__))

Definition at line 145 of file rpmds.h.

#define RPMELF_FLAG_SKIPPROVIDES 0x1 /*<! rpmdsELF: skip provides */

Definition at line 615 of file rpmds.h.

Referenced by rpmdsELF(), and rpmfcELF().

#define RPMELF_FLAG_SKIPREQUIRES 0x2 /*<! rpmdsELF: skip requires */

Definition at line 616 of file rpmds.h.

Referenced by rpmdsELF(), and rpmfcELF().

## Function Documentation

int rpmdsUname | ( | rpmds * | dsp,
|  | const struct utsname * | un
| ) |  |

Definition at line 3482 of file rpmds.c.

References rpmdsNSAdd(), and RPMSENSE_EQUAL.

Referenced by main(), rpmds_Uname(), rpmShowRC(), and unsatisfiedDepend().

## Variable Documentation

const char* _cpuinfo_path

Definition at line 1291 of file rpmds.c.

Referenced by rpmdsCpuinfo().