Imported Upstream version 4.14.1
[platform/upstream/rpm.git] / lib / backend / ndb / rpmidx.h
1 #include "rpmpkg.h"
2 #include "rpmxdb.h"
3
4 struct rpmidxdb_s;
5 typedef struct rpmidxdb_s *rpmidxdb;
6
7 int rpmidxOpen(rpmidxdb *idxdbp, rpmpkgdb pkgdb, const char *filename, int flags, int mode);
8 int rpmidxOpenXdb(rpmidxdb *idxdbp, rpmpkgdb pkgdb, rpmxdb xdb, unsigned int xdbtag);
9 int rpmidxDelXdb(rpmpkgdb pkgdb, rpmxdb xdb, unsigned int xdbtag);
10 void rpmidxClose(rpmidxdb idxdbp);
11
12 int rpmidxGet(rpmidxdb idxdb, const unsigned char *key, unsigned int keyl, unsigned int **pkgidxlist, unsigned int *pkgidxnum);
13 int rpmidxPut(rpmidxdb idxdb, const unsigned char *key, unsigned int keyl, unsigned int pkgidx, unsigned int datidx);
14 int rpmidxDel(rpmidxdb idxdb, const unsigned char *key, unsigned int keyl, unsigned int pkgidx, unsigned int datidx);
15 int rpmidxList(rpmidxdb idxdb, unsigned int **keylistp, unsigned int *nkeylistp, unsigned char **datap);
16
17 int rpmidxStats(rpmidxdb idxdb);
18