00001 #ifndef H_SIGNATURE
00002 #define H_SIGNATURE
00003
00009 #include <header.h>
00010
00014 typedef enum sigType_e {
00015 RPMSIGTYPE_NONE = 0,
00016 RPMSIGTYPE_PGP262_1024 = 1,
00017
00018 RPMSIGTYPE_BAD = 2,
00019
00020 RPMSIGTYPE_MD5 = 3,
00021 RPMSIGTYPE_MD5_PGP = 4,
00022 RPMSIGTYPE_HEADERSIG= 5,
00023 RPMSIGTYPE_DISABLE = 6,
00024 } sigType;
00025
00030 typedef enum pgpVersion_e {
00031 PGP_NOTDETECTED = -1,
00032 PGP_UNKNOWN = 0,
00033 PGP_2 = 2,
00034 PGP_5 = 5
00035 } pgpVersion;
00036
00037 #ifdef __cplusplus
00038 extern "C" {
00039 #endif
00040
00045 Header rpmNewSignature(void) ;
00046
00055 rpmRC rpmReadSignature(FD_t fd, Header *headerp,
00056 sigType sig_type)
00057 ;
00058
00065 int rpmWriteSignature(FD_t fd, Header h)
00066 ;
00067
00071 int rpmAddSignature(Header h, const char * file,
00072 int_32 sigTag, const char * passPhrase)
00073 ;
00074
00075
00076
00077
00078 #define RPMLOOKUPSIG_QUERY 0
00079 #define RPMLOOKUPSIG_DISABLE 1
00080 #define RPMLOOKUPSIG_ENABLE 2
00081
00085 int rpmLookupSignatureType(int action)
00086 ;
00087
00091 char * rpmGetPassPhrase(const char *prompt, const int sigTag)
00092 ;
00093
00097
00098 const char * rpmDetectPGPVersion(
00099 pgpVersion * pgpVer)
00100 ;
00101
00102
00103 #ifdef __cplusplus
00104 }
00105 #endif
00106
00107 #endif