Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages  

lib/signature.c File Reference

More...

#include "system.h"
#include "rpmio_internal.h"
#include <rpmlib.h>
#include <rpmmacro.h>
#include "md5.h"
#include "misc.h"
#include "rpmlead.h"
#include "signature.h"
#include "debug.h"

Go to the source code of this file.

Defines

#define X(_x)    (unsigned)((_x) & 0xff)

Typedefs

typedef int (* md5func )(const char *fn, byte *digest)

Functions

int rpmLookupSignatureType (int action)
const char* rpmDetectPGPVersion (pgpVersion *pgpVer)
rpmRC checkSize (FD_t fd, int siglen, int pad, int datalen)
 Check package size. More...

rpmRC rpmReadSignature (FD_t fd, Header *headerp, sigType sig_type)
int rpmWriteSignature (FD_t fd, Header h)
Header rpmNewSignature (void)
Header rpmFreeSignature (Header h)
int makePGPSignature (const char *file, void **sig, int_32 *size, const char *passPhrase)
int makeGPGSignature (const char *file, void **sig, int_32 *size, const char *passPhrase)
int rpmAddSignature (Header h, const char *file, int_32 sigTag, const char *passPhrase)
rpmVerifySignatureReturn verifySizeSignature (const char *datafile, int_32 size, char *result)
rpmVerifySignatureReturn verifyMD5Signature (const char *datafile, const byte *sig, char *result, md5func fn)
rpmVerifySignatureReturn verifyPGPSignature (const char *datafile, const void *sig, int count, char *result)
rpmVerifySignatureReturn verifyGPGSignature (const char *datafile, const void *sig, int count, char *result)
int checkPassPhrase (const char *passPhrase, const int sigTag)
char* rpmGetPassPhrase (const char *prompt, const int sigTag)
rpmVerifySignatureReturn rpmVerifySignature (const char *file, int_32 sigTag, const void *sig, int count, char *result)

Variables

char** environ = NULL


Detailed Description

Definition in file signature.c.


Define Documentation

#define X( _x )   (unsigned)((_x) & 0xff)
 

Definition at line 504 of file signature.c.

Referenced by verifyMD5Signature().


Typedef Documentation

typedef int (* md5func)(const char * fn, byte * digest)
 

Definition at line 33 of file signature.c.


Function Documentation

int checkPassPhrase ( const char * passPhrase,
const int sigTag ) [static]
 

Definition at line 783 of file signature.c.

Referenced by rpmGetPassPhrase().

rpmRC checkSize ( FD_t fd,
int siglen,
int pad,
int datalen ) [inline, static]
 

Check package size.

Todo:
rpmio: use fdSize rather than fstat(2) to get file size.
Parameters:
fd   package file handle
siglen   signature header size
pad   signature padding
datalen   length of header+payload
Returns:
rpmRC return code

Definition at line 115 of file signature.c.

Referenced by rpmReadSignature().

int makeGPGSignature ( const char * file,
void ** sig,
int_32 * size,
const char * passPhrase ) [static]
 

Definition at line 357 of file signature.c.

Referenced by rpmAddSignature().

int makePGPSignature ( const char * file,
void ** sig,
int_32 * size,
const char * passPhrase ) [static]
 

Definition at line 245 of file signature.c.

Referenced by rpmAddSignature().

rpmVerifySignatureReturn verifyGPGSignature ( const char * datafile,
const void * sig,
int count,
char * result ) [static]
 

Definition at line 689 of file signature.c.

Referenced by rpmVerifySignature().

rpmVerifySignatureReturn verifyMD5Signature ( const char * datafile,
const byte * sig,
char * result,
md5func fn ) [static]
 

Definition at line 507 of file signature.c.

Referenced by rpmVerifySignature().

rpmVerifySignatureReturn verifyPGPSignature ( const char * datafile,
const void * sig,
int count,
char * result ) [static]
 

Definition at line 544 of file signature.c.

Referenced by rpmVerifySignature().

rpmVerifySignatureReturn verifySizeSignature ( const char * datafile,
int_32 size,
char * result ) [static]
 

Definition at line 486 of file signature.c.

Referenced by rpmVerifySignature().


Variable Documentation

char** environ = NULL
 

Definition at line 30 of file signature.c.


Generated at Fri Aug 2 00:04:14 2002 for rpm by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001