Annotation of rpm2html/rpmdata.h, revision 1.5
1.1 veillard 1: /*
2: * rpmdata.h : describes the data gathered for each RPM analyzed.
3: *
1.5 ! veillard 4: * $Id: rpmdata.h,v 1.4 1997/11/11 22:28:11 veillard Exp $
1.2 veillard 5: *
6: * $Log: rpmdata.h,v $
1.5 ! veillard 7: * Revision 1.4 1997/11/11 22:28:11 veillard
! 8: * Added the support for dependancies on resources, Daniel.
! 9: *
1.4 veillard 10: * Revision 1.3 1997/11/11 21:18:53 veillard
11: * Improved a lot, removed bugs related to sorting, Daniel.
12: *
1.3 veillard 13: * Revision 1.2 1997/11/11 11:10:10 veillard
14: * State after one night of work, Daniel
15: *
1.2 veillard 16: * Revision 1.1.1.1 1997/11/11 07:12:32 veillard
17: * First revision of RPM-Check
1.1 veillard 18: *
19: */
20:
21: #ifndef __RPMDATA_H__
22: #define __RPMDATA_H__
23:
24: #include <rpm/header.h>
25:
26: /*
27: * structure associated with an rpm
28: */
29:
30: #define MAX_RESS 35
1.4 veillard 31: #define MAX_REQU 35
1.1 veillard 32:
33: typedef struct rpm_data {
34: struct rpm_data *next; /* next in the list */
1.2 veillard 35: char *filename; /* name of the file */
1.1 veillard 36: char *name; /* name of the software */
37: char *version; /* version of the software */
38: char *release; /* software release */
1.2 veillard 39: char *arch; /* the target platform */
1.1 veillard 40: char *distribution; /* general OS distribution */
41: char *vendor; /* general OS vendor */
42: char *group; /* type of software */
1.2 veillard 43: char *summary; /* 1 line summary */
44: char *description; /* short description */
45: char *srcrpm; /* source RPM */
46: time_t date; /* date of packaging */
1.1 veillard 47: int_32 size; /* size of the software */
48: char *host; /* build host */
49: int nb_ressources; /* #of ressources provided */
50: struct rpm_ressource *
51: ressources[MAX_RESS]; /* list of them */
1.4 veillard 52: int nb_requires; /* #of ressources required */
53: struct rpm_ressource *
54: requires[MAX_REQU]; /* list of them */
1.5 ! veillard 55: char *filelist; /* the filelist */
1.1 veillard 56: } rpmData, *rpmDataPtr;
57:
58: /*
59: * structure associated with a resource
60: */
61:
62: #define MAX_PROVIDE 30
63:
64: typedef struct rpm_ressource {
65: struct rpm_ressource *next; /* next in the list */
66: char *name; /* name of the ressource */
67: int nb_provider; /* #of ressources provided */
68: struct rpm_data *
69: provider[MAX_PROVIDE];/* list of them */
70: } rpmRess, *rpmRessPtr;
71:
72:
73: extern rpmDataPtr rpmList;
74: extern rpmRessPtr ressList;
75:
76: extern void rpmDataPrint(rpmDataPtr rpm);
77: extern void rpmDataPrintAll(void);
78: extern rpmRessPtr rpmRessAdd(char *ress, rpmDataPtr rpm);
1.4 veillard 79: extern rpmRessPtr rpmRequAdd(char *requ, rpmDataPtr rpm);
1.2 veillard 80: extern int rpmOpen(char *nameRpm);
1.3 veillard 81:
82: void rpmGroupSort(void);
83: void rpmDistribSort(void);
84: void rpmVendorSort(void);
85: void rpmDateSort(void);
1.1 veillard 86:
87: #endif /* __RPMDATA_H__ */
Webmaster