# RPMDEP.

## Files

file | depends.c
file | depends.h
| Structures used for dependency checking.

file | rpmlib.h
file | rpmlibprov.c

## Data Structures

struct | tsortInfo_s
struct | availablePackage
struct | availableIndexEntry
struct | availableIndex
struct | fileIndexEntry
struct | dirInfo_s
struct | availableList_s
struct | transactionElement_s
struct | rpmTransactionSet_s
struct | problemsSet_s

## Typedefs

typedef dirInfo_s * | dirInfo
typedef availableList_s * | availableList
typedef problemsSet_s * | problemsSet

## Functions

int | headerMatchesDepFlags (Header h, const char *reqName, const char *reqEVR, int reqFlags)

## Typedef Documentation

typedef struct availableList_s * availableList

| Set of available packages, items, and directories. Referenced by alAddPackage(), alAllFileSatisfiesDepend(), alAllSatisfiesDepend(), alCreate(), alFree(), alFreeIndex(), alMakeIndex(), and alSatisfiesDepend().

typedef struct dirInfo_s * dirInfo

| A directory to be installed/removed. Referenced by alAddPackage(), alAllFileSatisfiesDepend(), and dirInfoCompare().

typedef struct problemsSet_s * problemsSet

| Problems encountered while checking dependencies. Referenced by checkDependentConflicts(), checkDependentPackages(), checkPackageDeps(), checkPackageSet(), and rpmdepCheck().

## Function Documentation

int headerMatchesDepFlags | ( | Header | h,
|  | const char * | reqName,
|  | const char * | reqEVR,
|  | int | reqFlags
| ) |

Compare package name-version-release from header with dependency, looking for overlap.

Deprecated:
  Remove from API when obsoletes is correctly eliminated.

Parameters:

  h | header
  reqName | dependency name
  reqEVR | dependency [epoch:]version[-release]
  reqFlags | dependency logical range qualifiers

Returns:
  1 if dependency overlaps, 0 otherwise

Definition at line 664 of file depends.c.

References alloca(), Header, headerNVR(), HGE_t, int_32, rpmRangesOverlap(), RPMSENSE_EQUAL, RPMSENSE_SENSEMASK, RPMTAG_EPOCH, and stpcpy().

Referenced by handleOneTrigger(), and rpmtransAddPackage().