rpm  5.2.1
Data Structures | Macros | Functions | Variables
rpmns.c File Reference
#include "system.h"
#include <rpmiotypes.h>
#include <rpmio.h>
#include <rpmmacro.h>
#include <rpmcb.h>
#include <rpmpgp.h>
#include <rpmtypes.h>
#include <rpmtag.h>
#include <rpmevr.h>
#include <rpmns.h>
#include <rpmdb.h>
#include <rpmps.h>
#include <rpmts.h>
#include "debug.h"
Include dependency graph for rpmns.c:

Go to the source code of this file.

Data Structures

struct  _rpmnsProbes_s
 Dependency probe table. More...
 

Macros

#define _RPMIOB_INTERNAL   /* XXX rpmiobSlurp */
 
#define _RPMPGP_INTERNAL
 
#define _RPMEVR_INTERNAL
 
#define _RPMNS_INTERNAL
 
#define _RPMTS_INTERNAL   /* XXX ts->pkpkt, ts->pkpktlen */
 

Functions

nsType rpmnsArch (const char *str)
 Is string a known arch suffix? More...
 
nsType rpmnsProbe (const char *str)
 Is string a known probe namespace? More...
 
nsType rpmnsClassify (const char *str)
 Classify a string as a dependency type. More...
 
int rpmnsParse (const char *str, rpmns ns)
 Split NS string into namespace, name and arch components. More...
 
static unsigned char nibble (char c)
 Convert hex to binary nibble. More...
 
rpmRC rpmnsProbeSignature (void *_ts, const char *fn, const char *sigfn, const char *pubfn, const char *pubid, int flags)
 Verify OpenPGP signature on a file. More...
 

Variables

int _rpmns_debug = 0
 
const char * _rpmns_N_at_A = "."
 
static const char * rpmnsArches []
 
static struct _rpmnsProbes_s rpmnsProbes []
 

Macro Definition Documentation

#define _RPMEVR_INTERNAL

Definition at line 17 of file rpmns.c.

#define _RPMIOB_INTERNAL   /* XXX rpmiobSlurp */

Definition at line 6 of file rpmns.c.

#define _RPMNS_INTERNAL

Definition at line 19 of file rpmns.c.

#define _RPMPGP_INTERNAL

Definition at line 12 of file rpmns.c.

#define _RPMTS_INTERNAL   /* XXX ts->pkpkt, ts->pkpktlen */

Definition at line 24 of file rpmns.c.

Function Documentation

static unsigned char nibble ( char  c)
inlinestatic

Convert hex to binary nibble.

Parameters
chex character
Returns
binary nibble

Definition at line 280 of file rpmns.c.

Referenced by rpmnsProbeSignature().

rpmRC rpmnsProbeSignature ( void *  _ts,
const char *  fn,
const char *  sigfn,
const char *  pubfn,
const char *  pubid,
int  flags 
)

Verify OpenPGP signature on a file.

Parameters
_tstransaction set
fnplaintext (or clearsign) file
sigfnbinary/pem encoded signature file (NULL iff clearsign)
pubfnbinary/pem encoded pubkey file (NULL uses rpmdb keyring)
pubidpubkey fingerprint hex string (NULL disables check)
flags(unused)
Returns
RPMRC_OK if verified, RPMRC_FAIL if not verified

Definition at line 292 of file rpmns.c.

References _free(), _rpmns_debug, alloca(), nibble(), PGPARMOR_PUBKEY, PGPARMOR_SIGNATURE, pgpFindPubkey(), pgpGetPubkey(), pgpGetSignature(), pgpGrab(), pgpImplSetDSA(), pgpImplSetRSA(), pgpImplVerifyDSA(), pgpImplVerifyRSA(), pgpPrtPkts(), PGPPUBKEYALGO_DSA, PGPPUBKEYALGO_RSA, pgpReadPkts(), RPMDIGEST_NONE, rpmDigestInit(), rpmDigestUpdate(), rpmExpand(), rpmiobFree(), rpmiobSlurp(), RPMRC_FAIL, RPMRC_NOKEY, RPMRC_OK, rpmtsCleanDig(), and rpmtsDig().

Referenced by unsatisfiedDepend().

Variable Documentation

int _rpmns_debug = 0

Definition at line 33 of file rpmns.c.

Referenced by rpmnsProbeSignature().

const char* _rpmns_N_at_A = "."

Definition at line 36 of file rpmns.c.

Referenced by rpmdsNewDNEVR(), rpmnsClassify(), and rpmnsParse().

const char* rpmnsArches[]
static
Initial value:
= {
"i386", "i486", "i586", "i686", "athlon", "pentium3", "pentium4",
"x86_64", "amd64", "ia32e",
"alpha", "alphaev5", "alphaev56", "alphapca56", "alphaev6", "alphaev67",
"sparc", "sun4", "sun4m", "sun4c", "sun4d", "sparcv8",
"sparcv9", "sparcv9b", "sparcv9v", "sparcv9v2",
"sparc64", "sun4u", "sparc64v",
"mips", "mipsel", "IP",
"ppc", "ppciseries", "ppcpseries",
"ppc64", "ppc64iseries", "ppc64pseries",
"m68k",
"rs6000",
"ia64",
"armv3l", "armv4b", "armv4l",
"armv5teb", "armv5tel", "armv5tejl",
"armv6l",
"s390", "i370", "s390x",
"sh", "sh3", "sh4", "sh4a", "xtensa",
"noarch", "fat",
NULL,
}

Definition at line 40 of file rpmns.c.

Referenced by rpmnsArch().

struct _rpmnsProbes_s rpmnsProbes[]
static

Referenced by rpmnsProbe().