4 /** \file lib/oldrpmdb.h
10 #include <oldheader.h>
14 RPMDB_NONE, RPMDB_GDBM_ERROR, RPMDB_NO_MEMORY
32 RPMDB_NOFREE, RPMDB_FREENAME, RPMDB_FREEALL
37 char *name, *version, *release;
38 enum oldrpmdbFreeType freeType;
39 struct oldrpmdbLabel *next;
40 int fileNumber; /* -1 means invalid */
43 struct oldrpmdbPackageInfo
45 char *name, *version, *release;
47 unsigned int installTime, buildTime;
55 unsigned int fileCount;
56 struct oldrpmFileInfo *files;
59 #define RPMDB_READER 1
65 int oldrpmdbOpen (struct oldrpmdb *oldrpmdb);
66 void oldrpmdbClose (struct oldrpmdb *oldrpmdb);
67 struct oldrpmdbLabel *oldrpmdbGetAllLabels (struct oldrpmdb *oldrpmdb);
68 struct oldrpmdbLabel *oldrpmdbFindPackagesByFile (struct oldrpmdb *oldrpmdb, char *path);
69 struct oldrpmdbLabel *oldrpmdbFindPackagesByLabel (struct oldrpmdb *oldrpmdb,
70 struct oldrpmdbLabel label);
72 char *oldrpmdbGetPackageGroup (struct oldrpmdb *oldrpmdb,
73 struct oldrpmdbLabel label);
74 char *oldrpmdbGetPackagePostun (struct oldrpmdb *oldrpmdb,
75 struct oldrpmdbLabel label);
76 char *oldrpmdbGetPackagePreun (struct oldrpmdb *oldrpmdb,
77 struct oldrpmdbLabel label);
78 char *oldrpmdbGetPackageGif (struct oldrpmdb *oldrpmdb, struct oldrpmdbLabel label,
80 int oldrpmdbGetPackageInfo (struct oldrpmdb *oldrpmdb, struct oldrpmdbLabel label,
81 struct oldrpmdbPackageInfo *pinfo);
82 void oldrpmdbFreePackageInfo (struct oldrpmdbPackageInfo package);
84 struct oldrpmdbLabel oldrpmdbMakeLabel (char *name, char *version, char *release,
85 int fileNumber, enum oldrpmdbFreeType freeType);
86 void oldrpmdbFreeLabelList (struct oldrpmdbLabel *list);
87 void oldrpmdbFreeLabel (struct oldrpmdbLabel label);
88 int oldrpmdbWasError (struct oldrpmdb *oldrpmdb);
90 int oldrpmdbLabelstrToLabel (char *str, int length, struct oldrpmdbLabel *label);
91 char *oldrpmdbLabelToLabelstr (struct oldrpmdbLabel label, int withFileNum);
92 int oldrpmdbLabelCmp (struct oldrpmdbLabel *one, struct oldrpmdbLabel *two);
94 void oldrpmdbSetPrefix (char *new);
100 #endif /* _H_OLDRPMDB */