rpm  5.4.15
rpmgc.h
Go to the documentation of this file.
1 #ifndef H_RPMGC
2 #define H_RPMGC
3 
8 #include <rpmiotypes.h>
9 #include <rpmpgp.h>
10 #include <rpmsw.h>
11 
12 /* Implementation specific includes. */
13 #if defined(_RPMGC_INTERNAL)
14 /* XXX http://stackoverflow.com/questions/10556299/compiler-warnings-with-libgcrypt-v1-5-0 */
15 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
16 #include <gcrypt.h>
17 #pragma GCC diagnostic warning "-Wdeprecated-declarations"
18 #endif
19 
22 typedef /*abstract@*/ struct rpmgc_s * rpmgc;
23 
27 #if defined(_RPMGC_INTERNAL)
28 struct rpmgc_s {
29  int in_fips_mode; /* XXX trsa */
30  unsigned int nbits;
31  unsigned int qbits;
32  gcry_error_t badok; /* XXX trsa */
33  gcry_error_t err;
34 
35  void * digest;
36  size_t digestlen;
37 
38  gcry_sexp_t key_spec; /* XXX private to Generate? */
39  gcry_sexp_t key_pair; /* XXX private to Generate? */
40 
41  gcry_sexp_t pub_key;
42  gcry_sexp_t sec_key;
43  gcry_sexp_t hash;
44  gcry_sexp_t sig;
45 
46  /* DSA/ELG parameters. */
47  gcry_mpi_t p; /* ECDSA too */
48  gcry_mpi_t q; /* ECDSA too */
49  gcry_mpi_t g; /* ECDSA too */
50  gcry_mpi_t y;
51 
52  gcry_mpi_t r; /* ECDSA too */
53  gcry_mpi_t s; /* ECDSA too */
54 
55  /* RSA parameters. */
56  gcry_mpi_t n; /* ECDSA too */
57  gcry_mpi_t e;
58  gcry_mpi_t c;
59 
60  /* ECDSA parameters. */
61  gcry_mpi_t a; /* unused */
62  gcry_mpi_t b; /* unused */
63 /*@only@*/
64  const char * oid; /* curve oid string like "1.2.840.10045.3.1.7" */
65 /*@only@*/
66  const char * curve; /* curve string like "NIST P-256" */
67 
68 };
69 #endif
70 
71 /*@unchecked@*/
73 
75  /*@*/;
76 int rpmgcExportSignature(pgpDig dig, /*@only@*/ DIGEST_CTX ctx)
77  /*@*/;
78 
79 #endif /* H_RPMGC */
const bson * b
Definition: bson.h:280
struct rpmgc_s * rpmgc
Definition: rpmgc.h:22
OpenPGP constants and structures from RFC-2440.
int rpmgcExportSignature(pgpDig dig, DIGEST_CTX ctx)
mongo_error_t err
Definition: mongo.h:922
const char const bson_oid_t * oid
Definition: bson.h:757
static unsigned int hash(const char *str)
Definition: set.c:1346
Digest private data.
Definition: digest.c:130
struct pgpDig_s * pgpDig
Definition: rpmiotypes.h:97
int rpmgcExportPubkey(pgpDig dig)
pgpImplVecs_t rpmgcImplVecs
Implementation specific parameter storage.