rpm  4.10.0
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 */