OpenCoverage

bn_print.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/bn/bn_print.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5static const char Hex[]="0123456789ABCDEF";-
6-
7-
8char *-
9BN_bn2hex(const BIGNUM *a)-
10{-
11 int i, j, v, z = 0;-
12 char *buf;-
13 char *p;-
14-
15 buf = malloc(((a)->neg != 0) + a->top * 8 * 2 + 2);-
16 if (buf ==
buf == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
17 ((void *)0)
buf == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
18 ) {-
19 ERR_put_error(3,(0xfff),((1|64)),__FILE__,83);-
20 goto
never executed: goto err;
err;
never executed: goto err;
0
21 }-
22 p = buf;-
23 if (((
((a)->neg != 0)Description
TRUEnever evaluated
FALSEnever evaluated
a)->neg != 0)
((a)->neg != 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
24 *
never executed: *p++ = '-';
p++ = '-';
never executed: *p++ = '-';
0
25 if (((
((a)->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
a)->top == 0)
((a)->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
26 *
never executed: *p++ = '0';
p++ = '0';
never executed: *p++ = '0';
0
27 for (i = a->top - 1; i >=0
i >=0Description
TRUEnever evaluated
FALSEnever evaluated
; i--) {
0
28 for (j = 64 - 8; j >= 0
j >= 0Description
TRUEnever evaluated
FALSEnever evaluated
; j -= 8) {
0
29-
30 v = ((int)(a->d[i] >> (long)j)) & 0xff;-
31 if (z
zDescription
TRUEnever evaluated
FALSEnever evaluated
|| (
(v != 0)Description
TRUEnever evaluated
FALSEnever evaluated
v != 0)
(v != 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
32 *p++ = Hex[v >> 4];-
33 *p++ = Hex[v & 0x0f];-
34 z = 1;-
35 }
never executed: end of block
0
36 }
never executed: end of block
0
37 }
never executed: end of block
0
38 *p = '\0';-
39-
40err:
code before this statement never executed: err:
0
41 return
never executed: return (buf);
(buf);
never executed: return (buf);
0
42}-
43-
44-
45char *-
46BN_bn2dec(const BIGNUM *a)-
47{-
48 int i = 0, num, bn_data_num, ok = 0;-
49 char *buf = -
50 ((void *)0)-
51 ;-
52 char *p;-
53 BIGNUM *t = -
54 ((void *)0)-
55 ;-
56 unsigned long *bn_data = -
57 ((void *)0)-
58 , *lp;-
59-
60 if (((
((a)->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
a)->top == 0)
((a)->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
61 buf = malloc(((a)->neg != 0) + 2);-
62 if (buf ==
buf == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
63 ((void *)0)
buf == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
64 ) {-
65 ERR_put_error(3,(0xfff),((1|64)),__FILE__,121);-
66 goto
never executed: goto err;
err;
never executed: goto err;
0
67 }-
68 p = buf;-
69 if (((
((a)->neg != 0)Description
TRUEnever evaluated
FALSEnever evaluated
a)->neg != 0)
((a)->neg != 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
70 *
never executed: *p++ = '-';
p++ = '-';
never executed: *p++ = '-';
0
71 *p++ = '0';-
72 *p++ = '\0';-
73 return
never executed: return (buf);
(buf);
never executed: return (buf);
0
74 }-
75-
76-
77-
78-
79-
80-
81 i = BN_num_bits(a) * 3;-
82 num = (i / 10 + i / 1000 + 1) + 1;-
83 bn_data_num = num / 19 + 1;-
84 bn_data = reallocarray(-
85 ((void *)0)-
86 , bn_data_num, sizeof(unsigned long));-
87 buf = malloc(num + 3);-
88 if ((
(buf == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
buf ==
(buf == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
89 ((void *)0)
(buf == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
90 )
(buf == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
|| (
(bn_data == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
bn_data ==
(bn_data == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
91 ((void *)0)
(bn_data == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
92 )
(bn_data == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
93 ERR_put_error(3,(0xfff),((1|64)),__FILE__,143);-
94 goto
never executed: goto err;
err;
never executed: goto err;
0
95 }-
96 if ((
(t = BN_dup(a)) == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
t = BN_dup(a)) ==
(t = BN_dup(a)) == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
97 ((void *)0)
(t = BN_dup(a)) == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
98 )-
99 goto
never executed: goto err;
err;
never executed: goto err;
0
100-
101-
102 p = buf;-
103 lp = bn_data;-
104 if (((
((t)->neg != 0)Description
TRUEnever evaluated
FALSEnever evaluated
t)->neg != 0)
((t)->neg != 0)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
105 *
never executed: *p++ = '-';
p++ = '-';
never executed: *p++ = '-';
0
106-
107 while (!((t)->top == 0)
!((t)->top == 0)Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
108 if (lp - bn_data >= bn_data_num
lp - bn_data >= bn_data_numDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
109 goto
never executed: goto err;
err;
never executed: goto err;
0
110 *lp = BN_div_word(t, (10000000000000000000UL));-
111 if (*
*lp == (unsigned long)-1Description
TRUEnever evaluated
FALSEnever evaluated
lp == (unsigned long)-1
*lp == (unsigned long)-1Description
TRUEnever evaluated
FALSEnever evaluated
)
0
112 goto
never executed: goto err;
err;
never executed: goto err;
0
113 lp++;-
114 }
never executed: end of block
0
115 lp--;-
116-
117-
118-
119 snprintf(p, (num+3 - (size_t)(p - buf)), "%lu", *lp);-
120 while (*
*pDescription
TRUEnever evaluated
FALSEnever evaluated
p
*pDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
121 p++;
never executed: p++;
0
122 while (lp != bn_data
lp != bn_dataDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
123 lp--;-
124 snprintf(p, (num+3 - (size_t)(p - buf)), "%019lu", *lp);-
125 while (*
*pDescription
TRUEnever evaluated
FALSEnever evaluated
p
*pDescription
TRUEnever evaluated
FALSEnever evaluated
)
0
126 p++;
never executed: p++;
0
127 }
never executed: end of block
0
128 ok = 1;-
129-
130err:
code before this statement never executed: err:
0
131 free(bn_data);-
132 BN_free(t);-
133 if (!ok
!okDescription
TRUEnever evaluated
FALSEnever evaluated
&& buf
bufDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
134 free(buf);-
135 buf = -
136 ((void *)0)-
137 ;-
138 }
never executed: end of block
0
139-
140 return
never executed: return (buf);
(buf);
never executed: return (buf);
0
141}-
142-
143int-
144BN_hex2bn(BIGNUM **bn, const char *a)-
145{-
146 BIGNUM *ret = -
147 ((void *)0)-
148 ;-
149 unsigned long l = 0;-
150 int neg = 0, h, m, i,j, k, c;-
151 int num;-
152-
153 if ((
(a == ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
a ==
(a == ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
0-180
154 ((void *)0)
(a == ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
0-180
155 )
(a == ((void *)0) )Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
|| (*
(*a == '\0')Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
a == '\0')
(*a == '\0')Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
)
0-180
156 return
never executed: return (0);
(0);
never executed: return (0);
0
157-
158 if (*
*a == '-'Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • bnaddsub
FALSEevaluated 178 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
a == '-'
*a == '-'Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • bnaddsub
FALSEevaluated 178 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
) {
2-178
159 neg = 1;-
160 a++;-
161 }
executed 2 times by 1 test: end of block
Executed by:
  • bnaddsub
2
162-
163 for (i = 0; i <= (0x7fffffff / 4)
i <= (0x7fffffff / 4)Description
TRUEevaluated 10762 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEnever evaluated
&&
0-10762
164 ((*
((*__ctype_b_l...nt) _ISxdigit)Description
TRUEevaluated 10582 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
__ctype_b_loc ())[(int) ((
((*__ctype_b_l...nt) _ISxdigit)Description
TRUEevaluated 10582 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
180-10582
165 (unsigned char)a[i]
((*__ctype_b_l...nt) _ISxdigit)Description
TRUEevaluated 10582 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
180-10582
166 ))] & (unsigned short int) _ISxdigit)
((*__ctype_b_l...nt) _ISxdigit)Description
TRUEevaluated 10582 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
180-10582
167 ; i++)-
168 ;
executed 10582 times by 3 tests: ;
Executed by:
  • bnaddsub
  • bntest
  • ectest
10582
169 if (i > 0x7fffffff / 4
i > 0x7fffffff / 4Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
)
0-180
170 goto
never executed: goto err;
err;
never executed: goto err;
0
171-
172 num = i + neg;-
173 if (bn ==
bn == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
0-180
174 ((void *)0)
bn == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
0-180
175 )-
176 return
never executed: return (num);
(num);
never executed: return (num);
0
177-
178-
179 if (*
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
bn ==
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
0-180
180 ((void *)0)
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
0-180
181 ) {-
182 if ((
(ret = BN_new(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ret = BN_new()) ==
(ret = BN_new(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
183 ((void *)0)
(ret = BN_new(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
184 )-
185 return
never executed: return (0);
(0);
never executed: return (0);
0
186 }
never executed: end of block
else {
0
187 ret= *bn;-
188 (BN_set_word((ret),0));-
189 }
executed 180 times by 3 tests: end of block
Executed by:
  • bnaddsub
  • bntest
  • ectest
180
190-
191-
192 if (bn_expand(ret, i * 4) ==
bn_expand(ret,...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
0-180
193 ((void *)0)
bn_expand(ret,...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
0-180
194 )-
195 goto
never executed: goto err;
err;
never executed: goto err;
0
196-
197 j = i;-
198 m = 0;-
199 h = 0;-
200 while (j > 0
j > 0Description
TRUEevaluated 753 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
) {
180-753
201 m = ((
((8*2) <= j)Description
TRUEevaluated 620 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 133 times by 2 tests
Evaluated by:
  • bnaddsub
  • ectest
8*2) <= j)
((8*2) <= j)Description
TRUEevaluated 620 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 133 times by 2 tests
Evaluated by:
  • bnaddsub
  • ectest
? (8 * 2) : j;
133-620
202 l = 0;-
203 for (;;) {-
204 c = a[j - m];-
205 if ((
(c >= '0')Description
TRUEevaluated 10582 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEnever evaluated
c >= '0')
(c >= '0')Description
TRUEevaluated 10582 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEnever evaluated
&& (
(c <= '9')Description
TRUEevaluated 6408 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 4174 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
c <= '9')
(c <= '9')Description
TRUEevaluated 6408 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 4174 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
)
0-10582
206 k = c - '0';
executed 6408 times by 3 tests: k = c - '0';
Executed by:
  • bnaddsub
  • bntest
  • ectest
6408
207 else if ((
(c >= 'a')Description
TRUEevaluated 18 times by 1 test
Evaluated by:
  • ectest
FALSEevaluated 4156 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
c >= 'a')
(c >= 'a')Description
TRUEevaluated 18 times by 1 test
Evaluated by:
  • ectest
FALSEevaluated 4156 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
&& (
(c <= 'f')Description
TRUEevaluated 18 times by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
c <= 'f')
(c <= 'f')Description
TRUEevaluated 18 times by 1 test
Evaluated by:
  • ectest
FALSEnever evaluated
)
0-4156
208 k = c - 'a' + 10;
executed 18 times by 1 test: k = c - 'a' + 10;
Executed by:
  • ectest
18
209 else if ((
(c >= 'A')Description
TRUEevaluated 4156 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEnever evaluated
c >= 'A')
(c >= 'A')Description
TRUEevaluated 4156 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEnever evaluated
&& (
(c <= 'F')Description
TRUEevaluated 4156 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEnever evaluated
c <= 'F')
(c <= 'F')Description
TRUEevaluated 4156 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEnever evaluated
)
0-4156
210 k = c - 'A' + 10;
executed 4156 times by 3 tests: k = c - 'A' + 10;
Executed by:
  • bnaddsub
  • bntest
  • ectest
4156
211 else-
212 k = 0;
never executed: k = 0;
0
213 l = (l << 4) | k;-
214-
215 if (--
--m <= 0Description
TRUEevaluated 753 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 9829 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
m <= 0
--m <= 0Description
TRUEevaluated 753 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 9829 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
) {
753-9829
216 ret->d[h++] = l;-
217 break;
executed 753 times by 3 tests: break;
Executed by:
  • bnaddsub
  • bntest
  • ectest
753
218 }-
219 }
executed 9829 times by 3 tests: end of block
Executed by:
  • bnaddsub
  • bntest
  • ectest
9829
220 j -= (8 * 2);-
221 }
executed 753 times by 3 tests: end of block
Executed by:
  • bnaddsub
  • bntest
  • ectest
753
222 ret->top = h;-
223 { unsigned long *ftl; int tmp_top = (ret)->top; if (tmp_top > 0
tmp_top > 0Description
TRUEevaluated 180 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEnever evaluated
) { for (ftl= &((ret)->d[tmp_top-1]); tmp_top > 0
tmp_top > 0Description
TRUEevaluated 201 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 6 times by 2 tests
Evaluated by:
  • bnaddsub
  • ectest
; tmp_top--) if (*(
*(ftl--)Description
TRUEevaluated 174 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 27 times by 2 tests
Evaluated by:
  • bnaddsub
  • ectest
ftl--)
*(ftl--)Description
TRUEevaluated 174 times by 3 tests
Evaluated by:
  • bnaddsub
  • bntest
  • ectest
FALSEevaluated 27 times by 2 tests
Evaluated by:
  • bnaddsub
  • ectest
) break;
executed 174 times by 3 tests: break;
Executed by:
  • bnaddsub
  • bntest
  • ectest
(ret)->top = tmp_top; }
executed 180 times by 3 tests: end of block
Executed by:
  • bnaddsub
  • bntest
  • ectest
; };
0-201
224 ret->neg = neg;-
225-
226 *bn = ret;-
227 ;-
228 return
executed 180 times by 3 tests: return (num);
Executed by:
  • bnaddsub
  • bntest
  • ectest
(num);
executed 180 times by 3 tests: return (num);
Executed by:
  • bnaddsub
  • bntest
  • ectest
180
229-
230err:-
231 if (*
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
bn ==
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
232 ((void *)0)
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
233 )-
234 BN_free(ret);
never executed: BN_free(ret);
0
235 return
never executed: return (0);
(0);
never executed: return (0);
0
236}-
237-
238int-
239BN_dec2bn(BIGNUM **bn, const char *a)-
240{-
241 BIGNUM *ret = -
242 ((void *)0)-
243 ;-
244 unsigned long l = 0;-
245 int neg = 0, i, j;-
246 int num;-
247-
248 if ((
(a == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
a ==
(a == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
249 ((void *)0)
(a == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
0
250 )
(a == ((void *)0) )Description
TRUEnever evaluated
FALSEnever evaluated
|| (*
(*a == '\0')Description
TRUEnever evaluated
FALSEnever evaluated
a == '\0')
(*a == '\0')Description
TRUEnever evaluated
FALSEnever evaluated
)
0
251 return
never executed: return (0);
(0);
never executed: return (0);
0
252 if (*
*a == '-'Description
TRUEnever evaluated
FALSEnever evaluated
a == '-'
*a == '-'Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
253 neg = 1;-
254 a++;-
255 }
never executed: end of block
0
256-
257 for (i = 0; i <= (0x7fffffff / 4)
i <= (0x7fffffff / 4)Description
TRUEnever evaluated
FALSEnever evaluated
&&
0
258 ((*
((*__ctype_b_l...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
__ctype_b_loc ())[(int) ((
((*__ctype_b_l...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
259 (unsigned char)a[i]
((*__ctype_b_l...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
260 ))] & (unsigned short int) _ISdigit)
((*__ctype_b_l...int) _ISdigit)Description
TRUEnever evaluated
FALSEnever evaluated
0
261 ; i++)-
262 ;
never executed: ;
0
263 if (i > 0x7fffffff / 4
i > 0x7fffffff / 4Description
TRUEnever evaluated
FALSEnever evaluated
)
0
264 goto
never executed: goto err;
err;
never executed: goto err;
0
265-
266 num = i + neg;-
267 if (bn ==
bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
268 ((void *)0)
bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
269 )-
270 return
never executed: return (num);
(num);
never executed: return (num);
0
271-
272-
273-
274 if (*
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
bn ==
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
275 ((void *)0)
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
276 ) {-
277 if ((
(ret = BN_new(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
ret = BN_new()) ==
(ret = BN_new(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
278 ((void *)0)
(ret = BN_new(...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
279 )-
280 return
never executed: return (0);
(0);
never executed: return (0);
0
281 }
never executed: end of block
else {
0
282 ret = *bn;-
283 (BN_set_word((ret),0));-
284 }
never executed: end of block
0
285-
286-
287 if (bn_expand(ret, i * 4) ==
bn_expand(ret,...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
288 ((void *)0)
bn_expand(ret,...== ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
289 )-
290 goto
never executed: goto err;
err;
never executed: goto err;
0
291-
292 j = 19 - (i % 19);-
293 if (j == 19
j == 19Description
TRUEnever evaluated
FALSEnever evaluated
)
0
294 j = 0;
never executed: j = 0;
0
295 l = 0;-
296 while (*
*aDescription
TRUEnever evaluated
FALSEnever evaluated
a
*aDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
297 l *= 10;-
298 l += *a - '0';-
299 a++;-
300 if (++
++j == 19Description
TRUEnever evaluated
FALSEnever evaluated
j == 19
++j == 19Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
301 BN_mul_word(ret, (10000000000000000000UL));-
302 BN_add_word(ret, l);-
303 l = 0;-
304 j = 0;-
305 }
never executed: end of block
0
306 }
never executed: end of block
0
307 ret->neg = neg;-
308-
309 { unsigned long *ftl; int tmp_top = (ret)->top; if (tmp_top > 0
tmp_top > 0Description
TRUEnever evaluated
FALSEnever evaluated
) { for (ftl= &((ret)->d[tmp_top-1]); tmp_top > 0
tmp_top > 0Description
TRUEnever evaluated
FALSEnever evaluated
; tmp_top--) if (*(
*(ftl--)Description
TRUEnever evaluated
FALSEnever evaluated
ftl--)
*(ftl--)Description
TRUEnever evaluated
FALSEnever evaluated
) break;
never executed: break;
(ret)->top = tmp_top; }
never executed: end of block
; };
0
310 *bn = ret;-
311 ;-
312 return
never executed: return (num);
(num);
never executed: return (num);
0
313-
314err:-
315 if (*
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
bn ==
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
316 ((void *)0)
*bn == ((void *)0)Description
TRUEnever evaluated
FALSEnever evaluated
0
317 )-
318 BN_free(ret);
never executed: BN_free(ret);
0
319 return
never executed: return (0);
(0);
never executed: return (0);
0
320}-
321-
322int-
323BN_asc2bn(BIGNUM **bn, const char *a)-
324{-
325 const char *p = a;-
326 if (*
*p == '-'Description
TRUEnever evaluated
FALSEnever evaluated
p == '-'
*p == '-'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
327 p++;
never executed: p++;
0
328-
329 if (p[0] == '0'
p[0] == '0'Description
TRUEnever evaluated
FALSEnever evaluated
&& (p[1] == 'X'
p[1] == 'X'Description
TRUEnever evaluated
FALSEnever evaluated
|| p[1] == 'x'
p[1] == 'x'Description
TRUEnever evaluated
FALSEnever evaluated
)) {
0
330 if (!BN_hex2bn(bn, p + 2)
!BN_hex2bn(bn, p + 2)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
331 return
never executed: return 0;
0;
never executed: return 0;
0
332 }
never executed: end of block
else {
0
333 if (!BN_dec2bn(bn, p)
!BN_dec2bn(bn, p)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
334 return
never executed: return 0;
0;
never executed: return 0;
0
335 }
never executed: end of block
0
336 if (*
*a == '-'Description
TRUEnever evaluated
FALSEnever evaluated
a == '-'
*a == '-'Description
TRUEnever evaluated
FALSEnever evaluated
)
0
337 (*
never executed: (*bn)->neg = 1;
bn)->neg = 1;
never executed: (*bn)->neg = 1;
0
338 return
never executed: return 1;
1;
never executed: return 1;
0
339}-
340-
341-
342int-
343BN_print_fp(FILE *fp, const BIGNUM *a)-
344{-
345 BIO *b;-
346 int ret;-
347-
348 if ((
(b = BIO_new(B...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 67 times by 1 test
Evaluated by:
  • ectest
b = BIO_new(BIO_s_file())) ==
(b = BIO_new(B...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 67 times by 1 test
Evaluated by:
  • ectest
0-67
349 ((void *)0)
(b = BIO_new(B...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 67 times by 1 test
Evaluated by:
  • ectest
0-67
350 )-
351 return
never executed: return (0);
(0);
never executed: return (0);
0
352 BIO_ctrl(b,106,0x00,(char *)fp);-
353 ret = BN_print(b, a);-
354 BIO_free(b);-
355 return
executed 67 times by 1 test: return (ret);
Executed by:
  • ectest
(ret);
executed 67 times by 1 test: return (ret);
Executed by:
  • ectest
67
356}-
357-
358int-
359BN_print(BIO *bp, const BIGNUM *a)-
360{-
361 int i, j, v, z = 0;-
362 int ret = 0;-
363-
364 if ((
(a->neg)Description
TRUEevaluated 2198 times by 1 test
Evaluated by:
  • bntest
FALSEevaluated 4544 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
a->neg)
(a->neg)Description
TRUEevaluated 2198 times by 1 test
Evaluated by:
  • bntest
FALSEevaluated 4544 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
&& (
(BIO_write(bp, "-", 1) != 1)Description
TRUEnever evaluated
FALSEevaluated 2198 times by 1 test
Evaluated by:
  • bntest
BIO_write(bp, "-", 1) != 1)
(BIO_write(bp, "-", 1) != 1)Description
TRUEnever evaluated
FALSEevaluated 2198 times by 1 test
Evaluated by:
  • bntest
)
0-4544
365 goto
never executed: goto end;
end;
never executed: goto end;
0
366 if (((
((a)->top == 0)Description
TRUEevaluated 4 times by 2 tests
Evaluated by:
  • bntest
  • ectest
FALSEevaluated 6738 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
a)->top == 0)
((a)->top == 0)Description
TRUEevaluated 4 times by 2 tests
Evaluated by:
  • bntest
  • ectest
FALSEevaluated 6738 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
&& (
(BIO_write(bp, "0", 1) != 1)Description
TRUEnever evaluated
FALSEevaluated 4 times by 2 tests
Evaluated by:
  • bntest
  • ectest
BIO_write(bp, "0", 1) != 1)
(BIO_write(bp, "0", 1) != 1)Description
TRUEnever evaluated
FALSEevaluated 4 times by 2 tests
Evaluated by:
  • bntest
  • ectest
)
0-6738
367 goto
never executed: goto end;
end;
never executed: goto end;
0
368 for (i = a->top - 1; i >= 0
i >= 0Description
TRUEevaluated 52280 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
FALSEevaluated 6742 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
; i--) {
6742-52280
369 for (j = 64 - 4; j >= 0
j >= 0Description
TRUEevaluated 836480 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
FALSEevaluated 52280 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
; j -= 4) {
52280-836480
370-
371 v = ((int)(a->d[i] >> (long)j)) & 0x0f;-
372 if (z
zDescription
TRUEevaluated 782808 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
FALSEevaluated 53672 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
|| (
(v != 0)Description
TRUEevaluated 6738 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
FALSEevaluated 46934 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
v != 0)
(v != 0)Description
TRUEevaluated 6738 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
FALSEevaluated 46934 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
) {
6738-782808
373 if (BIO_write(bp, &(Hex[v]), 1) != 1
BIO_write(bp, ...x[v]), 1) != 1Description
TRUEnever evaluated
FALSEevaluated 789546 times by 3 tests
Evaluated by:
  • bntest
  • dhtest
  • ectest
)
0-789546
374 goto
never executed: goto end;
end;
never executed: goto end;
0
375 z = 1;-
376 }
executed 789546 times by 3 tests: end of block
Executed by:
  • bntest
  • dhtest
  • ectest
789546
377 }
executed 836480 times by 3 tests: end of block
Executed by:
  • bntest
  • dhtest
  • ectest
836480
378 }
executed 52280 times by 3 tests: end of block
Executed by:
  • bntest
  • dhtest
  • ectest
52280
379 ret = 1;-
380-
381end:
code before this statement executed 6742 times by 3 tests: end:
Executed by:
  • bntest
  • dhtest
  • ectest
6742
382 return
executed 6742 times by 3 tests: return (ret);
Executed by:
  • bntest
  • dhtest
  • ectest
(ret);
executed 6742 times by 3 tests: return (ret);
Executed by:
  • bntest
  • dhtest
  • ectest
6742
383}-
384-
385-
386char *-
387BN_options(void)-
388{-
389 static int init = 0;-
390 static char data[16];-
391-
392 if (!init
!initDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
393 init++;-
394-
395-
396-
397-
398 snprintf(data,sizeof data, "bn(%d,%d)",-
399 (int)sizeof(unsigned long) * 8, (int)sizeof(unsigned long) * 8);-
400-
401 }
never executed: end of block
0
402 return
never executed: return (data);
(data);
never executed: return (data);
0
403}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2