OpenCoverage

siphash_ameth.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/siphash/siphash_ameth.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7static int siphash_size(const EVP_PKEY *pkey)-
8{-
9 return
never executed: return 16;
16;
never executed: return 16;
0
10}-
11-
12static void siphash_key_free(EVP_PKEY *pkey)-
13{-
14 ASN1_OCTET_STRING *os = EVP_PKEY_get0(pkey);-
15-
16 if (os !=
os != ((void *)0)Description
TRUEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-26
17 ((void *)0)
os != ((void *)0)Description
TRUEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-26
18 ) {-
19 if (os->data !=
os->data != ((void *)0)Description
TRUEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-26
20 ((void *)0)
os->data != ((void *)0)Description
TRUEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEnever evaluated
0-26
21 )-
22 OPENSSL_cleanse(os->data, os->length);
executed 26 times by 1 test: OPENSSL_cleanse(os->data, os->length);
Executed by:
  • libcrypto.so.1.1
26
23 ASN1_OCTET_STRING_free(os);-
24 }
executed 26 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
26
25}
executed 26 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
26
26-
27static int siphash_pkey_ctrl(EVP_PKEY *pkey, int op, long arg1, void *arg2)-
28{-
29-
30 return
never executed: return -2;
-2;
never executed: return -2;
0
31}-
32-
33static int siphash_pkey_public_cmp(const EVP_PKEY *a, const EVP_PKEY *b)-
34{-
35 return
never executed: return ASN1_OCTET_STRING_cmp(EVP_PKEY_get0(a), EVP_PKEY_get0(b));
ASN1_OCTET_STRING_cmp(EVP_PKEY_get0(a), EVP_PKEY_get0(b));
never executed: return ASN1_OCTET_STRING_cmp(EVP_PKEY_get0(a), EVP_PKEY_get0(b));
0
36}-
37-
38static int siphash_set_priv_key(EVP_PKEY *pkey, const unsigned char *priv,-
39 size_t len)-
40{-
41 ASN1_OCTET_STRING *os;-
42-
43 if (pkey->pkey.ptr !=
pkey->pkey.ptr != ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-26
44 ((void *)0)
pkey->pkey.ptr != ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-26
45 || len != 16
len != 16Description
TRUEnever evaluated
FALSEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
)
0-26
46 return
never executed: return 0;
0;
never executed: return 0;
0
47-
48 os = ASN1_OCTET_STRING_new();-
49 if (os ==
os == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-26
50 ((void *)0)
os == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-26
51 )-
52 return
never executed: return 0;
0;
never executed: return 0;
0
53-
54 if (!ASN1_OCTET_STRING_set(os, priv, len)
!ASN1_OCTET_ST...os, priv, len)Description
TRUEnever evaluated
FALSEevaluated 26 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
) {
0-26
55 ASN1_OCTET_STRING_free(os);-
56 return
never executed: return 0;
0;
never executed: return 0;
0
57 }-
58-
59 pkey->pkey.ptr = os;-
60 return
executed 26 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
1;
executed 26 times by 1 test: return 1;
Executed by:
  • libcrypto.so.1.1
26
61}-
62-
63static int siphash_get_priv_key(const EVP_PKEY *pkey, unsigned char *priv,-
64 size_t *len)-
65{-
66 ASN1_OCTET_STRING *os = (ASN1_OCTET_STRING *)pkey->pkey.ptr;-
67-
68 if (priv ==
priv == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
69 ((void *)0)
priv == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
70 ) {-
71 *len = 16;-
72 return
never executed: return 1;
1;
never executed: return 1;
0
73 }-
74-
75 if (os ==
os == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
76 ((void *)0)
os == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
77 || *
*len < 16Description
TRUEnever evaluated
FALSEnever evaluated
len < 16
*len < 16Description
TRUEnever evaluated
FALSEnever evaluated
)
0
78 return
never executed: return 0;
0;
never executed: return 0;
0
79-
80 memcpy(priv, ASN1_STRING_get0_data(os), ASN1_STRING_length(os));-
81 *len = 16;-
82-
83 return
never executed: return 1;
1;
never executed: return 1;
0
84}-
85-
86const EVP_PKEY_ASN1_METHOD siphash_asn1_meth = {-
87 1062,-
88 1062,-
89 0,-
90-
91 "SIPHASH",-
92 "OpenSSL SIPHASH method",-
93-
94 0, 0, siphash_pkey_public_cmp, 0,-
95-
96 0, 0, 0,-
97-
98 siphash_size,-
99 0, 0,-
100 0, 0, 0, 0, 0, 0, 0,-
101-
102 siphash_key_free,-
103 siphash_pkey_ctrl,-
104 -
105 ((void *)0)-
106 ,-
107 -
108 ((void *)0)-
109 ,-
110-
111 -
112 ((void *)0)-
113 ,-
114 -
115 ((void *)0)-
116 ,-
117 -
118 ((void *)0)-
119 ,-
120-
121 -
122 ((void *)0)-
123 ,-
124 -
125 ((void *)0)-
126 ,-
127 -
128 ((void *)0)-
129 ,-
130-
131 siphash_set_priv_key,-
132 -
133 ((void *)0)-
134 ,-
135 siphash_get_priv_key,-
136 -
137 ((void *)0)-
138 ,-
139};-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2