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__)
#define rpmdsUnlink ( _ds,
_msg   )     XrpmdsUnlink(_ds, _msg, __FILE__, __LINE__)

Definition at line 136 of file rpmds.h.

Referenced by rpmdsFree().

#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 
)

Definition at line 3347 of file rpmds.c.

References rpmdsNSAdd(), and RPMSENSE_EQUAL.

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.

Generated on Wed Jun 30 10:56:09 2010 for rpm by  doxygen 1.6.3