OpenCoverage

poly1305_ameth.c

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

Generated by Squish Coco 4.2.2