OpenCoverage

evp_int.h

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/include/internal/evp_int.h
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8struct evp_pkey_ctx_st {-
9-
10 const EVP_PKEY_METHOD *pmeth;-
11-
12 ENGINE *engine;-
13-
14 EVP_PKEY *pkey;-
15-
16 EVP_PKEY *peerkey;-
17-
18 int operation;-
19-
20 void *data;-
21-
22 void *app_data;-
23-
24 EVP_PKEY_gen_cb *pkey_gencb;-
25-
26 int *keygen_info;-
27 int keygen_info_count;-
28} ;-
29-
30-
31-
32struct evp_pkey_method_st {-
33 int pkey_id;-
34 int flags;-
35 int (*init) (EVP_PKEY_CTX *ctx);-
36 int (*copy) (EVP_PKEY_CTX *dst, EVP_PKEY_CTX *src);-
37 void (*cleanup) (EVP_PKEY_CTX *ctx);-
38 int (*paramgen_init) (EVP_PKEY_CTX *ctx);-
39 int (*paramgen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey);-
40 int (*keygen_init) (EVP_PKEY_CTX *ctx);-
41 int (*keygen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey);-
42 int (*sign_init) (EVP_PKEY_CTX *ctx);-
43 int (*sign) (EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen,-
44 const unsigned char *tbs, size_t tbslen);-
45 int (*verify_init) (EVP_PKEY_CTX *ctx);-
46 int (*verify) (EVP_PKEY_CTX *ctx,-
47 const unsigned char *sig, size_t siglen,-
48 const unsigned char *tbs, size_t tbslen);-
49 int (*verify_recover_init) (EVP_PKEY_CTX *ctx);-
50 int (*verify_recover) (EVP_PKEY_CTX *ctx,-
51 unsigned char *rout, size_t *routlen,-
52 const unsigned char *sig, size_t siglen);-
53 int (*signctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx);-
54 int (*signctx) (EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen,-
55 EVP_MD_CTX *mctx);-
56 int (*verifyctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx);-
57 int (*verifyctx) (EVP_PKEY_CTX *ctx, const unsigned char *sig, int siglen,-
58 EVP_MD_CTX *mctx);-
59 int (*encrypt_init) (EVP_PKEY_CTX *ctx);-
60 int (*encrypt) (EVP_PKEY_CTX *ctx, unsigned char *out, size_t *outlen,-
61 const unsigned char *in, size_t inlen);-
62 int (*decrypt_init) (EVP_PKEY_CTX *ctx);-
63 int (*decrypt) (EVP_PKEY_CTX *ctx, unsigned char *out, size_t *outlen,-
64 const unsigned char *in, size_t inlen);-
65 int (*derive_init) (EVP_PKEY_CTX *ctx);-
66 int (*derive) (EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen);-
67 int (*ctrl) (EVP_PKEY_CTX *ctx, int type, int p1, void *p2);-
68 int (*ctrl_str) (EVP_PKEY_CTX *ctx, const char *type, const char *value);-
69 int (*digestsign) (EVP_MD_CTX *ctx, unsigned char *sig, size_t *siglen,-
70 const unsigned char *tbs, size_t tbslen);-
71 int (*digestverify) (EVP_MD_CTX *ctx, const unsigned char *sig,-
72 size_t siglen, const unsigned char *tbs,-
73 size_t tbslen);-
74 int (*check) (EVP_PKEY *pkey);-
75 int (*public_check) (EVP_PKEY *pkey);-
76 int (*param_check) (EVP_PKEY *pkey);-
77-
78 int (*digest_custom) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx);-
79} ;-
80-
81struct stack_st_EVP_PKEY_METHOD; typedef int (*sk_EVP_PKEY_METHOD_compfunc)(const EVP_PKEY_METHOD * const *a, const EVP_PKEY_METHOD *const *b); typedef void (*sk_EVP_PKEY_METHOD_freefunc)(EVP_PKEY_METHOD *a); typedef EVP_PKEY_METHOD * (*sk_EVP_PKEY_METHOD_copyfunc)(const EVP_PKEY_METHOD *a); static inline int sk_EVP_PKEY_METHOD_num(const struct stack_st_EVP_PKEY_METHOD *sk) { return
never executed: return OPENSSL_sk_num((const OPENSSL_STACK *)sk);
OPENSSL_sk_num((const OPENSSL_STACK *)sk);
never executed: return OPENSSL_sk_num((const OPENSSL_STACK *)sk);
} static inline const EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_value(const struct stack_st_EVP_PKEY_METHOD *sk, int idx) { return
executed 5 times by 1 test: return (const EVP_PKEY_METHOD *)OPENSSL_sk_value((const OPENSSL_STACK *)sk, idx);
Executed by:
  • libcrypto.so.1.1
(const EVP_PKEY_METHOD *)OPENSSL_sk_value((const OPENSSL_STACK *)sk, idx);
executed 5 times by 1 test: return (const EVP_PKEY_METHOD *)OPENSSL_sk_value((const OPENSSL_STACK *)sk, idx);
Executed by:
  • libcrypto.so.1.1
} static inline struct stack_st_EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_new(sk_EVP_PKEY_METHOD_compfunc compare) { return
executed 1 time by 1 test: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_new((OPENSSL_sk_compfunc)compare);
Executed by:
  • libcrypto.so.1.1
(struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_new((OPENSSL_sk_compfunc)compare);
executed 1 time by 1 test: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_new((OPENSSL_sk_compfunc)compare);
Executed by:
  • libcrypto.so.1.1
} static inline struct stack_st_EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_new_null(void) { return
never executed: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_new_null();
(struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_new_null();
never executed: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_new_null();
} static inline struct stack_st_EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_new_reserve(sk_EVP_PKEY_METHOD_compfunc compare, int n) { return
never executed: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_new_reserve((OPENSSL_sk_compfunc)compare, n);
(struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_new_reserve((OPENSSL_sk_compfunc)compare, n);
never executed: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_new_reserve((OPENSSL_sk_compfunc)compare, n);
} static inline int sk_EVP_PKEY_METHOD_reserve(struct stack_st_EVP_PKEY_METHOD *sk, int n) { return
never executed: return OPENSSL_sk_reserve((OPENSSL_STACK *)sk, n);
OPENSSL_sk_reserve((OPENSSL_STACK *)sk, n);
never executed: return OPENSSL_sk_reserve((OPENSSL_STACK *)sk, n);
} static inline void sk_EVP_PKEY_METHOD_free(struct stack_st_EVP_PKEY_METHOD *sk) { OPENSSL_sk_free((OPENSSL_STACK *)sk); }
never executed: end of block
static inline void sk_EVP_PKEY_METHOD_zero(struct stack_st_EVP_PKEY_METHOD *sk) { OPENSSL_sk_zero((OPENSSL_STACK *)sk); }
never executed: end of block
static inline const EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_delete(struct stack_st_EVP_PKEY_METHOD *sk, int i) { return
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_delete((OPENSSL_STACK *)sk, i);
(const EVP_PKEY_METHOD *)OPENSSL_sk_delete((OPENSSL_STACK *)sk, i);
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_delete((OPENSSL_STACK *)sk, i);
} static inline const EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_delete_ptr(struct stack_st_EVP_PKEY_METHOD *sk, const EVP_PKEY_METHOD *ptr) { return
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_delete_ptr((OPENSSL_STACK *)sk, (const void *)ptr);
(const EVP_PKEY_METHOD *)OPENSSL_sk_delete_ptr((OPENSSL_STACK *)sk, (const void *)ptr);
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_delete_ptr((OPENSSL_STACK *)sk, (const void *)ptr);
} static inline int sk_EVP_PKEY_METHOD_push(struct stack_st_EVP_PKEY_METHOD *sk, const EVP_PKEY_METHOD *ptr) { return
executed 1 time by 1 test: return OPENSSL_sk_push((OPENSSL_STACK *)sk, (const void *)ptr);
Executed by:
  • libcrypto.so.1.1
OPENSSL_sk_push((OPENSSL_STACK *)sk, (const void *)ptr);
executed 1 time by 1 test: return OPENSSL_sk_push((OPENSSL_STACK *)sk, (const void *)ptr);
Executed by:
  • libcrypto.so.1.1
} static inline int sk_EVP_PKEY_METHOD_unshift(struct stack_st_EVP_PKEY_METHOD *sk, const EVP_PKEY_METHOD *ptr) { return
never executed: return OPENSSL_sk_unshift((OPENSSL_STACK *)sk, (const void *)ptr);
OPENSSL_sk_unshift((OPENSSL_STACK *)sk, (const void *)ptr);
never executed: return OPENSSL_sk_unshift((OPENSSL_STACK *)sk, (const void *)ptr);
} static inline const EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_pop(struct stack_st_EVP_PKEY_METHOD *sk) { return
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_pop((OPENSSL_STACK *)sk);
(const EVP_PKEY_METHOD *)OPENSSL_sk_pop((OPENSSL_STACK *)sk);
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_pop((OPENSSL_STACK *)sk);
} static inline const EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_shift(struct stack_st_EVP_PKEY_METHOD *sk) { return
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_shift((OPENSSL_STACK *)sk);
(const EVP_PKEY_METHOD *)OPENSSL_sk_shift((OPENSSL_STACK *)sk);
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_shift((OPENSSL_STACK *)sk);
} static inline void sk_EVP_PKEY_METHOD_pop_free(struct stack_st_EVP_PKEY_METHOD *sk, sk_EVP_PKEY_METHOD_freefunc freefunc) { OPENSSL_sk_pop_free((OPENSSL_STACK *)sk, (OPENSSL_sk_freefunc)freefunc); }
executed 1 time by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
static inline int sk_EVP_PKEY_METHOD_insert(struct stack_st_EVP_PKEY_METHOD *sk, const EVP_PKEY_METHOD *ptr, int idx) { return
never executed: return OPENSSL_sk_insert((OPENSSL_STACK *)sk, (const void *)ptr, idx);
OPENSSL_sk_insert((OPENSSL_STACK *)sk, (const void *)ptr, idx);
never executed: return OPENSSL_sk_insert((OPENSSL_STACK *)sk, (const void *)ptr, idx);
} static inline const EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_set(struct stack_st_EVP_PKEY_METHOD *sk, int idx, const EVP_PKEY_METHOD *ptr) { return
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_set((OPENSSL_STACK *)sk, idx, (const void *)ptr);
(const EVP_PKEY_METHOD *)OPENSSL_sk_set((OPENSSL_STACK *)sk, idx, (const void *)ptr);
never executed: return (const EVP_PKEY_METHOD *)OPENSSL_sk_set((OPENSSL_STACK *)sk, idx, (const void *)ptr);
} static inline int sk_EVP_PKEY_METHOD_find(struct stack_st_EVP_PKEY_METHOD *sk, const EVP_PKEY_METHOD *ptr) { return
executed 18 times by 1 test: return OPENSSL_sk_find((OPENSSL_STACK *)sk, (const void *)ptr);
Executed by:
  • libcrypto.so.1.1
OPENSSL_sk_find((OPENSSL_STACK *)sk, (const void *)ptr);
executed 18 times by 1 test: return OPENSSL_sk_find((OPENSSL_STACK *)sk, (const void *)ptr);
Executed by:
  • libcrypto.so.1.1
} static inline int sk_EVP_PKEY_METHOD_find_ex(struct stack_st_EVP_PKEY_METHOD *sk, const EVP_PKEY_METHOD *ptr) { return
never executed: return OPENSSL_sk_find_ex((OPENSSL_STACK *)sk, (const void *)ptr);
OPENSSL_sk_find_ex((OPENSSL_STACK *)sk, (const void *)ptr);
never executed: return OPENSSL_sk_find_ex((OPENSSL_STACK *)sk, (const void *)ptr);
} static inline void sk_EVP_PKEY_METHOD_sort(struct stack_st_EVP_PKEY_METHOD *sk) { OPENSSL_sk_sort((OPENSSL_STACK *)sk); }
executed 1 time by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
static inline int sk_EVP_PKEY_METHOD_is_sorted(const struct stack_st_EVP_PKEY_METHOD *sk) { return
never executed: return OPENSSL_sk_is_sorted((const OPENSSL_STACK *)sk);
OPENSSL_sk_is_sorted((const OPENSSL_STACK *)sk);
never executed: return OPENSSL_sk_is_sorted((const OPENSSL_STACK *)sk);
} static inline struct stack_st_EVP_PKEY_METHOD * sk_EVP_PKEY_METHOD_dup(const struct stack_st_EVP_PKEY_METHOD *sk) { return
never executed: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_dup((const OPENSSL_STACK *)sk);
(struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_dup((const OPENSSL_STACK *)sk);
never executed: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_dup((const OPENSSL_STACK *)sk);
} static inline struct stack_st_EVP_PKEY_METHOD *sk_EVP_PKEY_METHOD_deep_copy(const struct stack_st_EVP_PKEY_METHOD *sk, sk_EVP_PKEY_METHOD_copyfunc copyfunc, sk_EVP_PKEY_METHOD_freefunc freefunc) { return
never executed: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_deep_copy((const OPENSSL_STACK *)sk, (OPENSSL_sk_copyfunc)copyfunc, (OPENSSL_sk_freefunc)freefunc);
(struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_deep_copy((const OPENSSL_STACK *)sk, (OPENSSL_sk_copyfunc)copyfunc, (OPENSSL_sk_freefunc)freefunc);
never executed: return (struct stack_st_EVP_PKEY_METHOD *)OPENSSL_sk_deep_copy((const OPENSSL_STACK *)sk, (OPENSSL_sk_copyfunc)copyfunc, (OPENSSL_sk_freefunc)freefunc);
} static inline sk_EVP_PKEY_METHOD_compfunc sk_EVP_PKEY_METHOD_set_cmp_func(struct stack_st_EVP_PKEY_METHOD *sk, sk_EVP_PKEY_METHOD_compfunc compare) { return
never executed: return (sk_EVP_PKEY_METHOD_compfunc)OPENSSL_sk_set_cmp_func((OPENSSL_STACK *)sk, (OPENSSL_sk_compfunc)compare);
(sk_EVP_PKEY_METHOD_compfunc)OPENSSL_sk_set_cmp_func((OPENSSL_STACK *)sk, (OPENSSL_sk_compfunc)compare);
never executed: return (sk_EVP_PKEY_METHOD_compfunc)OPENSSL_sk_set_cmp_func((OPENSSL_STACK *)sk, (OPENSSL_sk_compfunc)compare);
}
0-18
82-
83void evp_pkey_set_cb_translate(BN_GENCB *cb, EVP_PKEY_CTX *ctx);-
84-
85extern const EVP_PKEY_METHOD cmac_pkey_meth;-
86extern const EVP_PKEY_METHOD dh_pkey_meth;-
87extern const EVP_PKEY_METHOD dhx_pkey_meth;-
88extern const EVP_PKEY_METHOD dsa_pkey_meth;-
89extern const EVP_PKEY_METHOD ec_pkey_meth;-
90extern const EVP_PKEY_METHOD sm2_pkey_meth;-
91extern const EVP_PKEY_METHOD ecx25519_pkey_meth;-
92extern const EVP_PKEY_METHOD ecx448_pkey_meth;-
93extern const EVP_PKEY_METHOD ed25519_pkey_meth;-
94extern const EVP_PKEY_METHOD ed448_pkey_meth;-
95extern const EVP_PKEY_METHOD hmac_pkey_meth;-
96extern const EVP_PKEY_METHOD rsa_pkey_meth;-
97extern const EVP_PKEY_METHOD rsa_pss_pkey_meth;-
98extern const EVP_PKEY_METHOD scrypt_pkey_meth;-
99extern const EVP_PKEY_METHOD tls1_prf_pkey_meth;-
100extern const EVP_PKEY_METHOD hkdf_pkey_meth;-
101extern const EVP_PKEY_METHOD poly1305_pkey_meth;-
102extern const EVP_PKEY_METHOD siphash_pkey_meth;-
103-
104struct evp_md_st {-
105 int type;-
106 int pkey_type;-
107 int md_size;-
108 unsigned long flags;-
109 int (*init) (EVP_MD_CTX *ctx);-
110 int (*update) (EVP_MD_CTX *ctx, const void *data, size_t count);-
111 int (*final) (EVP_MD_CTX *ctx, unsigned char *md);-
112 int (*copy) (EVP_MD_CTX *to, const EVP_MD_CTX *from);-
113 int (*cleanup) (EVP_MD_CTX *ctx);-
114 int block_size;-
115 int ctx_size;-
116-
117 int (*md_ctrl) (EVP_MD_CTX *ctx, int cmd, int p1, void *p2);-
118} ;-
119-
120struct evp_cipher_st {-
121 int nid;-
122 int block_size;-
123-
124 int key_len;-
125 int iv_len;-
126-
127 unsigned long flags;-
128-
129 int (*init) (EVP_CIPHER_CTX *ctx, const unsigned char *key,-
130 const unsigned char *iv, int enc);-
131-
132 int (*do_cipher) (EVP_CIPHER_CTX *ctx, unsigned char *out,-
133 const unsigned char *in, size_t inl);-
134-
135 int (*cleanup) (EVP_CIPHER_CTX *);-
136-
137 int ctx_size;-
138-
139 int (*set_asn1_parameters) (EVP_CIPHER_CTX *, ASN1_TYPE *);-
140-
141 int (*get_asn1_parameters) (EVP_CIPHER_CTX *, ASN1_TYPE *);-
142-
143 int (*ctrl) (EVP_CIPHER_CTX *, int type, int arg, void *ptr);-
144-
145 void *app_data;-
146} ;-
147typedef struct {-
148 unsigned char pubkey[57];-
149 unsigned char *privkey;-
150} ECX_KEY;-
151-
152-
153-
154-
155-
156-
157-
158struct evp_pkey_st {-
159 int type;-
160 int save_type;-
161 CRYPTO_REF_COUNT references;-
162 const EVP_PKEY_ASN1_METHOD *ameth;-
163 ENGINE *engine;-
164 ENGINE *pmeth_engine;-
165 union {-
166 void *ptr;-
167-
168 struct rsa_st *rsa;-
169-
170-
171 struct dsa_st *dsa;-
172-
173-
174 struct dh_st *dh;-
175-
176-
177 struct ec_key_st *ec;-
178 ECX_KEY *ecx;-
179-
180 } pkey;-
181 int save_parameters;-
182 struct stack_st_X509_ATTRIBUTE *attributes;-
183 CRYPTO_RWLOCK *lock;-
184} ;-
185-
186-
187void openssl_add_all_ciphers_int(void);-
188void openssl_add_all_digests_int(void);-
189void evp_cleanup_int(void);-
190void evp_app_cleanup_int(void);-
191void evp_encode_ctx_set_flags(EVP_ENCODE_CTX *ctx, unsigned int flags);-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2