rpmprob.h
Go to the documentation of this file.

    00001 #ifndef _RPMPROB_H
    00002 #define _RPMPROB_H
    00003
    00009 #include <stdio.h>
    00010 #include <rpm/rpmtypes.h>
    00011
    00012 #ifdef __cplusplus
    00013 extern "C" {
    00014 #endif
    00015
    00016 typedef struct rpmProblem_s * rpmProblem;
    00017
    00021 enum rpmprobFilterFlags_e {
    00022     RPMPROB_FILTER_NONE         = 0,
    00023     RPMPROB_FILTER_IGNOREOS     = (1 << 0),
    00024     RPMPROB_FILTER_IGNOREARCH   = (1 << 1),
    00025     RPMPROB_FILTER_REPLACEPKG   = (1 << 2),
    00026     RPMPROB_FILTER_FORCERELOCATE= (1 << 3),
    00027     RPMPROB_FILTER_REPLACENEWFILES= (1 << 4),
    00028     RPMPROB_FILTER_REPLACEOLDFILES= (1 << 5),
    00029     RPMPROB_FILTER_OLDPACKAGE   = (1 << 6),
    00030     RPMPROB_FILTER_DISKSPACE    = (1 << 7),
    00031     RPMPROB_FILTER_DISKNODES    = (1 << 8)
    00032 };
    00033
    00034 typedef rpmFlags rpmprobFilterFlags;
    00035
    00039 typedef enum rpmProblemType_e {
    00040     RPMPROB_BADARCH,
    00041     RPMPROB_BADOS,
    00042     RPMPROB_PKG_INSTALLED,
    00043     RPMPROB_BADRELOCATE,
    00044     RPMPROB_REQUIRES,
    00045     RPMPROB_CONFLICT,
    00046     RPMPROB_NEW_FILE_CONFLICT,
    00047     RPMPROB_FILE_CONFLICT,
    00048     RPMPROB_OLDPACKAGE,
    00049     RPMPROB_DISKSPACE,
    00050     RPMPROB_DISKNODES,
    00051     RPMPROB_OBSOLETES,
    00052  } rpmProblemType;
    00053
    00064 rpmProblem rpmProblemCreate(rpmProblemType type,
    00065                             const char * pkgNEVR, fnpyKey key,
    00066                             const char * altNEVR,
    00067                             const char * str, uint64_t number);
    00068
    00074 rpmProblem rpmProblemFree(rpmProblem prob);
    00075
    00081 rpmProblem rpmProblemLink(rpmProblem prob);
    00082
    00089 int rpmProblemCompare(rpmProblem ap, rpmProblem bp);
    00090
    00097 const char * rpmProblemGetPkgNEVR(rpmProblem prob);
    00103 const char * rpmProblemGetAltNEVR(rpmProblem prob);
    00104
    00111 rpmProblemType rpmProblemGetType(rpmProblem prob);
    00112
    00118 fnpyKey rpmProblemGetKey(rpmProblem prob);
    00119
    00126 const char * rpmProblemGetStr(rpmProblem prob);
    00127
    00135 rpm_loff_t rpmProblemGetDiskNeed(rpmProblem prob);
    00136
    00142 char * rpmProblemString(rpmProblem prob);
    00143
    00144 #ifdef __cplusplus
    00145 }
    00146 #endif
    00147
    00148 #endif  /* _RPMPROB_H */