Defines | Variables

# lib/rpmds.h File Reference

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.

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

## Detailed Description

Structure(s) used for dependency tag sets.

Definition in file rpmds.h.

## Define Documentation

#define _RPMNS_INTERNAL

Definition at line 10 of file rpmds.h.

#define rpmdsLink | ( |  | _ds,
|  |  | _msg
| ) |  | XrpmdsLink(_ds, _msg, __FILE__, __LINE__)

Definition at line 153 of file rpmds.h.

#define rpmdsUnlink | ( |  | _ds,
|  |  | _msg
| ) |  | XrpmdsUnlink(_ds, _msg, __FILE__, __LINE__)

Definition at line 136 of file rpmds.h.

#define RPMELF_FLAG_SKIPPROVIDES 0x1

Definition at line 567 of file rpmds.h.

Referenced by rpmdsELF(), and rpmfcELF().

#define RPMELF_FLAG_SKIPREQUIRES 0x2

Definition at line 568 of file rpmds.h.

Referenced by rpmdsELF(), and rpmfcELF().

## Function Documentation

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

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

rpmds XrpmdsLink | ( | rpmds | ds,
|  | const char * | msg,
|  | const char * | fn,
|  | unsigned | ln
| ) |  |

Todo:
  Remove debugging entry from the ABI.

Definition at line 126 of file rpmds.c.

rpmds XrpmdsUnlink | ( | rpmds | ds,
|  | const char * | msg,
|  | const char * | fn,
|  | unsigned | ln
| ) |  |

Todo:
  Remove debugging entry from the ABI.

Definition at line 115 of file rpmds.c.