Annotation of rpm2html/rpmdata.h, revision 1.10

1.1       veillard    1: /*
                      2:  * rpmdata.h : describes the data gathered for each RPM analyzed.
                      3:  *
1.10    ! veillard    4:  * Copyright (c) 1997 Daniel Veillard <Daniel.Veillard@w3.org>
        !             5:  * See COPYING for the status of this software.
1.1       veillard    6:  *
1.10    ! veillard    7:  * $Id: rpmdata.h,v 1.9 1997/11/13 06:37:39 veillard Exp $
1.1       veillard    8:  */
                      9: 
                     10: #ifndef __RPMDATA_H__
                     11: #define __RPMDATA_H__
                     12: 
                     13: #include <rpm/header.h>
                     14: 
                     15: /*
1.6       veillard   16:  * Structure associated to a local directory containing RPM files.
                     17:  */
                     18: 
                     19: #define MAX_URLS 100
                     20: 
                     21: typedef struct rpm_dir {
                     22:     struct rpm_dir *next;      /* next in list */
                     23:     char *dir;                  /* The local repository */
                     24:     char *name;                        /* Name for this repository */
1.8       veillard   25:     char *ftp;                 /* The host URL it's mirrored from */
                     26:     char *ftpsrc;              /* The host URL where src.rpm can be found */
1.6       veillard   27:     char *color;               /* The bgcolor for the pages :-) */
                     28:     char *trust;               /* Confidences in the files */
                     29:     int   nb_urls;             /* numbers of mirrors */
                     30:     char *urls[MAX_URLS];       /* Urls for download */
                     31: } rpmDir, *rpmDirPtr;
                     32: 
                     33: /*
1.1       veillard   34:  * structure associated with an rpm
                     35:  */
                     36: 
                     37: #define MAX_RESS 35
1.4       veillard   38: #define MAX_REQU 35
1.1       veillard   39: 
                     40: typedef struct rpm_data {
                     41:     struct rpm_data *next;     /* next in the list */
1.6       veillard   42:     rpmDirPtr dir;             /* directory infos */
1.2       veillard   43:     char *filename;            /* name of the file */
1.1       veillard   44:     char *name;                        /* name of the software */
                     45:     char *version;             /* version of the software */
                     46:     char *release;             /* software release */
1.8       veillard   47:     char *url;                  /* URL for the software */
1.2       veillard   48:     char *arch;                 /* the target platform */
1.8       veillard   49:     char *os;                   /* the target system */
1.1       veillard   50:     char *distribution;                /* general OS distribution */
                     51:     char *vendor;              /* general OS vendor */
1.8       veillard   52:     char *packager;            /* the packager */
1.1       veillard   53:     char *group;               /* type of software */
1.2       veillard   54:     char *summary;             /* 1 line summary */
                     55:     char *description;          /* short description */
1.8       veillard   56:     char *copyright;            /* software copyright */
1.2       veillard   57:     char *srcrpm;              /* source RPM */
                     58:     time_t date;               /* date of packaging */
1.1       veillard   59:     int_32 size;               /* size of the software */
                     60:     char *host;                        /* build host */
                     61:     int   nb_ressources;       /* #of ressources provided */
                     62:     struct rpm_ressource *
                     63:           ressources[MAX_RESS];        /* list of them */
1.4       veillard   64:     int   nb_requires;         /* #of ressources required */
                     65:     struct rpm_ressource *
                     66:           requires[MAX_REQU];  /* list of them */
1.5       veillard   67:     char *filelist;             /* the filelist */
1.1       veillard   68: } rpmData, *rpmDataPtr;
                     69: 
                     70: /*
                     71:  * structure associated with a resource
                     72:  */
                     73: 
                     74: #define MAX_PROVIDE 30
                     75: 
                     76: typedef struct rpm_ressource {
                     77:     struct rpm_ressource *next;        /* next in the list */
                     78:     char *name;                        /* name of the ressource */
                     79:     int   nb_provider;         /* #of ressources provided */
                     80:     struct rpm_data *
                     81:           provider[MAX_PROVIDE];/* list of them */
                     82: } rpmRess, *rpmRessPtr;
                     83: 
                     84: 
                     85: extern rpmDataPtr rpmList;
                     86: extern rpmRessPtr ressList;
1.6       veillard   87: extern rpmDirPtr dirList;
1.1       veillard   88: 
                     89: extern void rpmDataPrint(rpmDataPtr rpm);
1.8       veillard   90: /* extern void rpmDataPrintAll(void); */
1.1       veillard   91: extern rpmRessPtr rpmRessAdd(char *ress, rpmDataPtr rpm);
1.4       veillard   92: extern rpmRessPtr rpmRequAdd(char *requ, rpmDataPtr rpm);
1.7       veillard   93: extern int rpmOpen(char *nameRpm, rpmDirPtr dir);
1.8       veillard   94: extern int rpmDirScanAll(void);
                     95: extern char *extractEMail(char *string);
1.3       veillard   96: 
1.8       veillard   97: extern void rpmGroupSort(void);
                     98: extern void rpmDistribSort(void);
                     99: extern void rpmVendorSort(void);
                    100: extern void rpmDateSort(void);
1.9       veillard  101: extern void rpmNameSort(void);
1.1       veillard  102: 
                    103: #endif /* __RPMDATA_H__ */

Webmaster