rpm
5.4.15
|
#include "system.h"
#include <rpmiotypes.h>
#include <rpmio.h>
#include <rpmhkp.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"
Go to the source code of this file.
Data Structures | |
struct | _rpmnsProbes_s |
Macros | |
#define | _RPMIOB_INTERNAL /* XXX rpmiobSlurp */ |
#define | _RPMHKP_INTERNAL |
#define | _RPMPGP_INTERNAL |
#define | _RPMEVR_INTERNAL |
#define | _RPMNS_INTERNAL |
#define | _RPMTS_INTERNAL /* XXX ts->hkp */ |
#define | SPEW(_list) |
#define | _ENTRY(_s, _type) { #_s, sizeof(#_s)-1, _type } |
Dependency probe table (must be sorted). More... | |
Functions | |
nsType | rpmnsArch (const char *str) |
Is string a known arch suffix? More... | |
nsType | rpmnsProbe (const char *s, size_t slen) |
Is string a known probe namespace? More... | |
nsType | rpmnsClassify (const char *s, size_t slen) |
Classify a string as a dependency type. More... | |
int | rpmnsParse (const char *s, rpmns ns) |
Expand and split NS(N).A 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 |
const char * | _rpmns_N_at_A = "." |
static const char * | rpmnsArches [] |
static struct _rpmnsProbes_s | rpmnsProbes [] |
static size_t | rpmnsProbesCount = sizeof(rpmnsProbes)/sizeof(rpmnsProbes[0]) |
#define _ENTRY | ( | _s, | |
_type | |||
) | { #_s, sizeof(#_s)-1, _type } |
#define _RPMIOB_INTERNAL /* XXX rpmiobSlurp */ |
#define SPEW | ( | _list | ) |
Definition at line 45 of file rpmns.c.
Referenced by rpmnsProbeSignature().
|
inlinestatic |
Convert hex to binary nibble.
c | hex character |
Definition at line 317 of file rpmns.c.
Referenced by rpmnsProbeSignature().
nsType rpmnsArch | ( | const char * | str | ) |
Is string a known arch suffix?
str | string |
Definition at line 76 of file rpmns.c.
References _free(), rpmExpand(), RPMNS_TYPE_ARCH, RPMNS_TYPE_UNKNOWN, and xisspace().
Referenced by rpmnsClassify().
nsType rpmnsClassify | ( | const char * | s, |
size_t | slen | ||
) |
Classify a string as a dependency type.
s | string like "bing(bang).boom" |
slen | string length (0 uses strlen(s)) |
Definition at line 203 of file rpmns.c.
References RPMNS_TYPE_ARCH, RPMNS_TYPE_COMPOUND, RPMNS_TYPE_DSO, RPMNS_TYPE_FUNCTION, RPMNS_TYPE_NAMESPACE, RPMNS_TYPE_PATH, RPMNS_TYPE_STRING, RPMNS_TYPE_UNKNOWN, RPMNS_TYPE_VERSION, rpmnsArch(), rpmnsProbe(), _rpmnsProbes_s::Type, and xisdigit().
Referenced by rpmnsParse().
int rpmnsParse | ( | const char * | str, |
rpmns | ns | ||
) |
Expand and split NS(N).A string into namespace, name and arch components.
str | string like "bing(bang).boom" |
*ns | parse results |
Definition at line 242 of file rpmns.c.
References rpmExpand(), RPMNS_TYPE_ACCESS, RPMNS_TYPE_ARCH, RPMNS_TYPE_COMPOUND, RPMNS_TYPE_CONFIG, RPMNS_TYPE_CPUINFO, RPMNS_TYPE_DIGEST, RPMNS_TYPE_DISKSPACE, RPMNS_TYPE_DSO, RPMNS_TYPE_ENVVAR, RPMNS_TYPE_FUNCTION, RPMNS_TYPE_GETCONF, RPMNS_TYPE_GNUPG, RPMNS_TYPE_GROUP, RPMNS_TYPE_MACRO, RPMNS_TYPE_MOUNTED, RPMNS_TYPE_NAMESPACE, RPMNS_TYPE_PATH, RPMNS_TYPE_RPMLIB, RPMNS_TYPE_RUNNING, RPMNS_TYPE_SANITY, RPMNS_TYPE_SIGNATURE, RPMNS_TYPE_SONAME, RPMNS_TYPE_STRING, RPMNS_TYPE_TAG, RPMNS_TYPE_UNAME, RPMNS_TYPE_UNKNOWN, RPMNS_TYPE_USER, RPMNS_TYPE_VCHECK, RPMNS_TYPE_VERIFY, RPMNS_TYPE_VERSION, and rpmnsClassify().
Referenced by rpmdsNewN().
nsType rpmnsProbe | ( | const char * | s, |
size_t | slen | ||
) |
Is string a known probe namespace?
s | string |
slen | string length (0 uses strlen(s)) |
Definition at line 176 of file rpmns.c.
References i, _rpmnsProbes_s::NS, _rpmnsProbes_s::NSlen, RPMNS_TYPE_UNKNOWN, rpmnsProbes, rpmnsProbesCount, and _rpmnsProbes_s::Type.
Referenced by rpmnsClassify().
rpmRC rpmnsProbeSignature | ( | void * | _ts, |
const char * | fn, | ||
const char * | sigfn, | ||
const char * | pubfn, | ||
const char * | pubid, | ||
int | flags | ||
) |
Verify OpenPGP signature on a file.
_ts | transaction set |
fn | plaintext (or clearsign) file |
sigfn | binary/pem encoded signature file (NULL iff clearsign) |
pubfn | binary/pem encoded pubkey file (NULL uses rpmdb keyring) |
pubid | pubkey fingerprint hex string (NULL disables check) |
flags | (unused) |
Definition at line 329 of file rpmns.c.
References _free(), _rpmhkpDumpDig(), alloca(), i, nibble(), ns, PGPARMOR_PUBKEY, PGPARMOR_SIGNATURE, pgpFindPubkey(), pgpGetPubkey(), pgpGetSignature(), pgpGrab(), pgpGrabPkts(), pgpImplSetDSA(), pgpImplSetECDSA(), pgpImplSetRSA(), pgpImplVerify(), pgpPktLen(), pgpPrtPkts(), PGPPUBKEYALGO_DSA, PGPPUBKEYALGO_ECDSA, PGPPUBKEYALGO_RSA, pgpPubkeyFingerprint(), pgpReadPkts(), RPMDIGEST_NONE, rpmDigestInit(), rpmDigestUpdate(), rpmExpand(), rpmhkpFindKey(), rpmhkpFree(), rpmhkpLink(), rpmhkpLoadSignature(), rpmhkpNew(), rpmhkpValidate(), rpmiobFree(), rpmiobSlurp(), RPMRC_FAIL, RPMRC_NOKEY, RPMRC_NOTFOUND, RPMRC_NOTTRUSTED, RPMRC_OK, rpmtsCleanDig(), rpmtsDig(), SPEW, and ts.
Referenced by unsatisfiedDepend().
const char* _rpmns_N_at_A = "." |
Definition at line 49 of file rpmns.c.
Referenced by rpmdsNewDNEVR().
|
static |
|
static |
Referenced by rpmnsProbe().
|
static |
Definition at line 174 of file rpmns.c.
Referenced by rpmnsProbe().