1 #ifndef H_RPMDB_INTERNAL
2 #define H_RPMDB_INTERNAL
8 #include <rpm/rpmtypes.h>
9 #include <rpm/rpmutil.h>
10 #include "lib/backend/dbi.h"
17 * Return rpmdb home directory (depending on chroot state)
18 * param db rpmdb handle
19 * return db home directory (or NULL on error)
22 const char *rpmdbHome(rpmdb db);
25 * Return database iterator.
26 * @param mi rpm database iterator
27 * @param keyp key data (NULL for sequential access)
28 * @param keylen key data length (0 will use strlen(keyp))
29 * @return 0 on success
31 int rpmdbExtendIterator(rpmdbMatchIterator mi,
32 const void * keyp, size_t keylen);
35 * sort the iterator by (recnum, filenum)
36 * Return database iterator.
37 * @param mi rpm database iterator
39 void rpmdbSortIterator(rpmdbMatchIterator mi);
43 * * Mergesort, same arguments as qsort(2).
46 int mergesort(void *base, size_t nmemb, size_t size,
47 int (*cmp) (const void *, const void *));
49 /* mergesort is defined in stdlib.h on Mac OS X */
50 #endif /* __APPLE__ */