00001 #ifndef H_SIGNATURE
00002 #define H_SIGNATURE
00003 
00009 #include <header.h>
00010 
00014 typedef enum sigType_e {
00015     RPMSIGTYPE_HEADERSIG= 5     
00016 } sigType;
00017 
00022 typedef enum pgpVersion_e {
00023     PGP_NOTDETECTED     = -1,
00024     PGP_UNKNOWN         = 0,
00025     PGP_2               = 2,
00026     PGP_5               = 5
00027 } pgpVersion;
00028 
00029 #ifdef __cplusplus
00030 extern "C" {
00031 #endif
00032 
00037 Header rpmNewSignature(void)
00038         ;
00039 
00049 rpmRC rpmReadSignature(FD_t fd,   Header *sighp,
00050                 sigType sig_type,   const char ** msg)
00051         
00052         ;
00053 
00060 int rpmWriteSignature(FD_t fd, Header h)
00061         
00062         ;
00063 
00072 int rpmAddSignature(Header sigh, const char * file,
00073                     int_32 sigTag,  const char * passPhrase)
00074         
00075         ;
00076 
00077 
00078 
00082 #define RPMLOOKUPSIG_QUERY      0       
00083 #define RPMLOOKUPSIG_DISABLE    1       
00084 #define RPMLOOKUPSIG_ENABLE     2       
00085 
00091 int rpmLookupSignatureType(int action)
00092         
00093         ;
00094 
00101  
00102 char * rpmGetPassPhrase( const char * prompt,
00103                 const int sigTag)
00104         
00105         ;
00106 
00112 
00113  const char * rpmDetectPGPVersion(
00114                           pgpVersion * pgpVer)
00115         
00116         ;
00117 
00118 
00119 #ifdef __cplusplus
00120 }
00121 #endif
00122 
00123 #endif