#include "system.h"
#include <rpmlib.h>
#include "rpmal.h"
#include "rpmds.h"
#include "rpmfi.h"
#include "debug.h"
Go to the source code of this file.
Data Structures | |
struct | availableIndex_s |
struct | availableIndexEntry_s |
struct | availablePackage_s |
struct | dirInfo_s |
struct | fileIndexEntry_s |
struct | rpmal_s |
Typedefs | |
typedef availablePackage_s * | availablePackage |
typedef availableIndexEntry_s * | availableIndexEntry |
typedef availableIndex_s * | availableIndex |
typedef fileIndexEntry_s * | fileIndexEntry |
typedef dirInfo_s * | dirInfo |
Functions | |
void | rpmalFreeIndex (rpmal al) |
Destroy available item index. More... | |
alNum | alKey2Num (const rpmal al, alKey pkgKey) |
alKey | alNum2Key (const rpmal al, alNum pkgNum) |
rpmal | rpmalCreate (int delta) |
Initialize available packckages, items, and directory list. More... | |
rpmal | rpmalFree (rpmal al) |
Free available packages, items, and directory members. More... | |
int | dieCompare (const void *one, const void *two) |
Compare two directory info entries by name (qsort/bsearch). More... | |
int | fieCompare (const void *one, const void *two) |
Compare two file info entries by name (qsort/bsearch). More... | |
void | rpmalDel (rpmal al, alKey pkgKey) |
Delete package from available list. More... | |
alKey | rpmalAdd (rpmal *alistp, alKey pkgKey, fnpyKey key, rpmds provides, rpmfi fi) |
Add package to available list. More... | |
int | indexcmp (const void *one, const void *two) |
Compare two available index entries by name (qsort/bsearch). More... | |
void | rpmalAddProvides (rpmal al, alKey pkgKey, rpmds provides) |
Add package provides to available list index. More... | |
void | rpmalMakeIndex (rpmal al) |
Generate index for available list. More... | |
fnpyKey * | rpmalAllFileSatisfiesDepend (const rpmal al, const rpmds ds, alKey *keyp) |
Check added package file lists for package(s) that provide a file. More... | |
fnpyKey * | rpmalAllSatisfiesDepend (const rpmal al, const rpmds ds, alKey *keyp) |
Check added package file lists for package(s) that have a provide. More... | |
fnpyKey | rpmalSatisfiesDepend (const rpmal al, const rpmds ds, alKey *keyp) |
Check added package file lists for first package that has a provide. More... | |
Variables | |
int | _rpmal_debug = 0 |
Definition in file rpmal.c.
|
|
|
|
|
|
|
|
|
|
|
Definition at line 147 of file rpmal.c. Referenced by rpmalAdd, rpmalAddProvides, rpmalAllSatisfiesDepend, and rpmalDel. |
|
Definition at line 156 of file rpmal.c. Referenced by rpmalAllFileSatisfiesDepend. |
|
Compare two directory info entries by name (qsort/bsearch).
Definition at line 242 of file rpmal.c. References dirInfo_s::dirName, and dirInfo_s::dirNameLen. Referenced by rpmalAdd, rpmalAllFileSatisfiesDepend, and rpmalDel. |
|
Compare two file info entries by name (qsort/bsearch).
Definition at line 267 of file rpmal.c. References fileIndexEntry_s::baseName, and fileIndexEntry_s::baseNameLen. Referenced by rpmalAdd, and rpmalAllFileSatisfiesDepend. |
|
Compare two available index entries by name (qsort/bsearch).
Definition at line 525 of file rpmal.c. References availableIndexEntry_s::entry, and availableIndexEntry_s::entryLen. Referenced by rpmalAllSatisfiesDepend, and rpmalMakeIndex. |
|
Add package to available list.
Definition at line 380 of file rpmal.c. References alKey, alKey2Num, alloca, rpmal_s::alloced, alNum, fileIndexEntry_s::baseName, fileIndexEntry_s::baseNameLen, rpmal_s::delta, die, dieCompare, dirInfo_s::dirName, dirInfo_s::dirNameLen, rpmal_s::dirs, availablePackage_s::fi, fieCompare, fileIndexEntry_s::fileFlags, dirInfo_s::files, availablePackage_s::key, rpmal_s::list, rpmal_s::numDirs, dirInfo_s::numFiles, fileIndexEntry_s::pkgNum, availablePackage_s::provides, RPMAL_NOMATCH, rpmalCreate, rpmalDel, rpmalFreeIndex, rpmds, rpmdsLink, rpmfi, rpmal_s::size, xrealloc, and xstrdup. |
|
Add package provides to available list index.
Definition at line 541 of file rpmal.c. References alKey, alKey2Num, alNum, availableIndexEntry_s::entry, availableIndexEntry_s::entryIx, availableIndexEntry_s::entryLen, availableIndex_s::index, rpmal_s::index, int_32, isDependsMULTILIB, availableIndex_s::k, rpmal_s::list, availableIndexEntry_s::pkgKey, rpmds, rpmdsFlags, rpmdsInit, rpmdsIx, rpmdsN, rpmdsNext, availableIndex_s::size, rpmal_s::size, and availableIndexEntry_s::type. |
|
Check added package file lists for package(s) that provide a file.
Definition at line 613 of file rpmal.c. References _, _free, alKey, alloca, alNum2Key, fileIndexEntry_s::baseName, fileIndexEntry_s::baseNameLen, die, dieCompare, dirInfo_s::dirName, dirInfo_s::dirNameLen, rpmal_s::dirs, fieCompare, fileIndexEntry_s::fileFlags, dirInfo_s::files, isFileMULTILIB, availablePackage_s::key, rpmal_s::list, rpmal_s::numDirs, dirInfo_s::numFiles, fileIndexEntry_s::pkgNum, RPMAL_NOMATCH, rpmds, rpmdsN, rpmdsNotify, xrealloc, and xstrdup. |
|
Check added package file lists for package(s) that have a provide.
Definition at line 712 of file rpmal.c. References _, alKey, alKey2Num, alloca, availableIndexEntry_s::entry, availableIndexEntry_s::entryIx, availableIndexEntry_s::entryLen, availableIndex_s::index, rpmal_s::index, indexcmp, availablePackage_s::key, rpmal_s::list, availableIndexEntry_s::pkgKey, availablePackage_s::provides, RPMAL_NOMATCH, rpmalAllFileSatisfiesDepend, rpmds, rpmdsCompare, rpmdsN, rpmdsNext, rpmdsNotify, rpmdsSetIx, availableIndex_s::size, availableIndexEntry_s::type, and xrealloc. |
|
Initialize available packckages, items, and directory list.
Definition at line 188 of file rpmal.c. References rpmal_s::alloced, rpmal_s::delta, rpmal_s::dirs, availableIndex_s::index, rpmal_s::index, rpmal_s::list, rpmal_s::numDirs, availableIndex_s::size, rpmal_s::size, and xcalloc. |
|
Delete package from available list.
Definition at line 286 of file rpmal.c. References _free, alKey, alKey2Num, alloca, alNum, die, dieCompare, dirInfo_s::dirName, dirInfo_s::dirNameLen, rpmal_s::dirs, availablePackage_s::fi, dirInfo_s::files, rpmal_s::list, rpmal_s::numDirs, dirInfo_s::numFiles, fileIndexEntry_s::pkgNum, availablePackage_s::provides, rpmdsFree, rpmfi, and xrealloc. |
|
Free available packages, items, and directory members.
Definition at line 206 of file rpmal.c. References _free, rpmal_s::alloced, die, dirInfo_s::dirName, rpmal_s::dirs, availablePackage_s::fi, dirInfo_s::files, rpmal_s::list, rpmal_s::numDirs, availablePackage_s::provides, rpmalFreeIndex, rpmdsFree, and rpmal_s::size. |
|
Destroy available item index.
Definition at line 124 of file rpmal.c. References _free, availableIndex_s::index, and availableIndex_s::size. |
|
Generate index for available list.
Definition at line 586 of file rpmal.c. References alKey, availableIndex_s::index, rpmal_s::index, indexcmp, availableIndex_s::k, rpmal_s::list, availablePackage_s::provides, rpmalAddProvides, rpmdsCount, rpmal_s::size, availableIndex_s::size, and xrealloc. |
|
Check added package file lists for first package that has a provide.
Definition at line 793 of file rpmal.c. References alKey, rpmalAllSatisfiesDepend, and rpmds. |
|
|