OpenCoverage

evp_asn1.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/asn1/evp_asn1.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3int-
4ASN1_TYPE_set_octetstring(ASN1_TYPE *a, unsigned char *data, int len)-
5{-
6 ASN1_STRING *os;-
7-
8 if ((
(os = ASN1_OCT...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
os = ASN1_OCTET_STRING_new()) ==
(os = ASN1_OCT...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
0-1
9 ((void *)0)
(os = ASN1_OCT...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
0-1
10 )-
11 return
never executed: return (0);
(0);
never executed: return (0);
0
12 if (!ASN1_STRING_set(os, data, len)
!ASN1_STRING_s...os, data, len)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
) {
0-1
13 ASN1_OCTET_STRING_free(os);-
14 return
never executed: return (0);
(0);
never executed: return (0);
0
15 }-
16 ASN1_TYPE_set(a, 4, os);-
17 return
executed 1 time by 1 test: return (1);
Executed by:
  • pkcs7test
(1);
executed 1 time by 1 test: return (1);
Executed by:
  • pkcs7test
1
18}-
19-
20int-
21ASN1_TYPE_get_octetstring(const ASN1_TYPE *a, unsigned char *data, int max_len)-
22{-
23 int ret, num;-
24 unsigned char *p;-
25-
26 if ((
(a->type != 4)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
a->type != 4)
(a->type != 4)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
||
0-1
27 (
(a->value.octe... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
a->value.octet_string ==
(a->value.octe... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
0-1
28 ((void *)0)
(a->value.octe... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
0-1
29 )
(a->value.octe... ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
) {
0-1
30 ERR_put_error(13,(0xfff),(109),__FILE__,89);-
31 return
never executed: return (-1);
(-1);
never executed: return (-1);
0
32 }-
33 p = ASN1_STRING_data(a->value.octet_string);-
34 ret = ASN1_STRING_length(a->value.octet_string);-
35 if (ret < max_len
ret < max_lenDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • pkcs7test
)
0-1
36 num = ret;
never executed: num = ret;
0
37 else-
38 num = max_len;
executed 1 time by 1 test: num = max_len;
Executed by:
  • pkcs7test
1
39 memcpy(data, p, num);-
40 return
executed 1 time by 1 test: return (ret);
Executed by:
  • pkcs7test
(ret);
executed 1 time by 1 test: return (ret);
Executed by:
  • pkcs7test
1
41}-
42-
43typedef struct {-
44 ASN1_INTEGER *num;-
45 ASN1_OCTET_STRING *value;-
46} ASN1_int_octetstring;-
47-
48static const ASN1_TEMPLATE ASN1_INT_OCTETSTRING_seq_tt[] = {-
49 {-
50 .offset = -
51 __builtin_offsetof (-
52 ASN1_int_octetstring-
53 , -
54 num-
55 )-
56 ,-
57 .field_name = "num",-
58 .item = &ASN1_INTEGER_it,-
59 },-
60 {-
61 .offset = -
62 __builtin_offsetof (-
63 ASN1_int_octetstring-
64 , -
65 value-
66 )-
67 ,-
68 .field_name = "value",-
69 .item = &ASN1_OCTET_STRING_it,-
70 },-
71};-
72-
73const ASN1_ITEM ASN1_INT_OCTETSTRING_it = {-
74 .itype = 0x1,-
75 .utype = 16,-
76 .templates = ASN1_INT_OCTETSTRING_seq_tt,-
77 .tcount = sizeof(ASN1_INT_OCTETSTRING_seq_tt) / sizeof(ASN1_TEMPLATE),-
78 .size = sizeof(ASN1_int_octetstring),-
79 .sname = "ASN1_INT_OCTETSTRING",-
80};-
81-
82int-
83ASN1_TYPE_set_int_octetstring(ASN1_TYPE *at, long num, unsigned char *data,-
84 int len)-
85{-
86 ASN1_int_octetstring *ios;-
87 ASN1_STRING *sp = -
88 ((void *)0)-
89 ;-
90 int ret = 0;-
91-
92 if ((
(ios = (ASN1_i...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
ios = (ASN1_int_octetstring *)ASN1_item_new(
(ios = (ASN1_i...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
93 &ASN1_INT_OCTETSTRING_it)) ==
(ios = (ASN1_i...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
94 ((void *)0)
(ios = (ASN1_i...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
95 )-
96 goto
never executed: goto err;
err;
never executed: goto err;
0
97 if ((
(ios->num = AS...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
ios->num = ASN1_INTEGER_new()) ==
(ios->num = AS...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
98 ((void *)0)
(ios->num = AS...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
99 )-
100 goto
never executed: goto err;
err;
never executed: goto err;
0
101 if (!ASN1_INTEGER_set(ios->num, num)
!ASN1_INTEGER_...ios->num, num)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
)
0-1
102 goto
never executed: goto err;
err;
never executed: goto err;
0
103 if ((
(ios->value = ...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
ios->value = ASN1_OCTET_STRING_new()) ==
(ios->value = ...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
104 ((void *)0)
(ios->value = ...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
105 )-
106 goto
never executed: goto err;
err;
never executed: goto err;
0
107 if (!ASN1_OCTET_STRING_set(ios->value, data, len)
!ASN1_OCTET_ST...ue, data, len)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
)
0-1
108 goto
never executed: goto err;
err;
never executed: goto err;
0
109-
110 if ((
(sp = ASN1_ite...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
sp = ASN1_item_pack(ios, &ASN1_INT_OCTETSTRING_it,
(sp = ASN1_ite...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
111 ((void *)0)
(sp = ASN1_ite...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
112 )) ==
(sp = ASN1_ite...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
113 ((void *)0)
(sp = ASN1_ite...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
0-1
114 )-
115 goto
never executed: goto err;
err;
never executed: goto err;
0
116-
117 ASN1_TYPE_set(at, 16, sp);-
118 sp = -
119 ((void *)0)-
120 ;-
121-
122 ret = 1;-
123-
124 err:
code before this statement executed 1 time by 1 test: err:
Executed by:
  • asn1evp
1
125 ASN1_item_free((ASN1_VALUE *)ios, &ASN1_INT_OCTETSTRING_it);-
126 ASN1_STRING_free(sp);-
127-
128 return
executed 1 time by 1 test: return ret;
Executed by:
  • asn1evp
ret;
executed 1 time by 1 test: return ret;
Executed by:
  • asn1evp
1
129}-
130-
131int-
132ASN1_TYPE_get_int_octetstring(const ASN1_TYPE *at, long *num, unsigned char *data,-
133 int max_len)-
134{-
135 ASN1_STRING *sp = at->value.sequence;-
136 ASN1_int_octetstring *ios = -
137 ((void *)0)-
138 ;-
139 int ret = -1;-
140 int len;-
141-
142 if (at->type != 16
at->type != 16Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
|| sp ==
sp == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
0-2
143 ((void *)0)
sp == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
0-2
144 )-
145 goto
never executed: goto err;
err;
never executed: goto err;
0
146-
147 if ((
(ios = ASN1_it...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
ios = ASN1_item_unpack(sp, &ASN1_INT_OCTETSTRING_it)) ==
(ios = ASN1_it...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
0-2
148 ((void *)0)
(ios = ASN1_it...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
0-2
149 )-
150 goto
never executed: goto err;
err;
never executed: goto err;
0
151-
152 if (num !=
num != ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
FALSEnever evaluated
0-2
153 ((void *)0)
num != ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
FALSEnever evaluated
0-2
154 )-
155 *
executed 2 times by 1 test: *num = ASN1_INTEGER_get(ios->num);
Executed by:
  • asn1evp
num = ASN1_INTEGER_get(ios->num);
executed 2 times by 1 test: *num = ASN1_INTEGER_get(ios->num);
Executed by:
  • asn1evp
2
156 if (data !=
data != ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
FALSEnever evaluated
0-2
157 ((void *)0)
data != ((void *)0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
FALSEnever evaluated
0-2
158 ) {-
159 len = ASN1_STRING_length(ios->value);-
160 if (len > max_len
len > max_lenDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
FALSEevaluated 1 time by 1 test
Evaluated by:
  • asn1evp
)
1
161 len = max_len;
executed 1 time by 1 test: len = max_len;
Executed by:
  • asn1evp
1
162 memcpy(data, ASN1_STRING_data(ios->value), len);-
163 }
executed 2 times by 1 test: end of block
Executed by:
  • asn1evp
2
164-
165 ret = ASN1_STRING_length(ios->value);-
166-
167 err:
code before this statement executed 2 times by 1 test: err:
Executed by:
  • asn1evp
2
168 ASN1_item_free((ASN1_VALUE *)ios, &ASN1_INT_OCTETSTRING_it);-
169-
170 if (ret == -1
ret == -1Description
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • asn1evp
)
0-2
171 ERR_put_error(13,(0xfff),(109),__FILE__,194);
never executed: ERR_put_error(13,(0xfff),(109),__FILE__,194);
0
172-
173 return
executed 2 times by 1 test: return ret;
Executed by:
  • asn1evp
ret;
executed 2 times by 1 test: return ret;
Executed by:
  • asn1evp
2
174}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2