OpenCoverage

rsa_x931.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/rsa/rsa_x931.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3int-
4RSA_padding_add_X931(unsigned char *to, int tlen, const unsigned char *from,-
5 int flen)-
6{-
7 int j;-
8 unsigned char *p;-
9-
10-
11-
12-
13-
14 j = tlen - flen - 2;-
15-
16 if (j < 0
j < 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
17 ERR_put_error(4,(0xfff),(110),__FILE__,81);-
18 return
never executed: return -1;
-1;
never executed: return -1;
0
19 }-
20-
21 p = (unsigned char *)to;-
22-
23-
24 if (j == 0
j == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
25 *
never executed: *p++ = 0x6A;
p++ = 0x6A;
never executed: *p++ = 0x6A;
0
26 else {-
27 *p++ = 0x6B;-
28 if (j > 1
j > 1Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
29 memset(p, 0xBB, j - 1);-
30 p += j - 1;-
31 }
never executed: end of block
0
32 *p++ = 0xBA;-
33 }
never executed: end of block
0
34 memcpy(p, from, flen);-
35 p += flen;-
36 *p = 0xCC;-
37 return
never executed: return 1;
1;
never executed: return 1;
0
38}-
39-
40int-
41RSA_padding_check_X931(unsigned char *to, int tlen, const unsigned char *from,-
42 int flen, int num)-
43{-
44 int i = 0, j;-
45 const unsigned char *p = from;-
46-
47 if (num != flen
num != flenDescription
TRUEnever evaluated
FALSEnever evaluated
|| (*
*p != 0x6ADescription
TRUEnever evaluated
FALSEnever evaluated
p != 0x6A
*p != 0x6ADescription
TRUEnever evaluated
FALSEnever evaluated
&& *
*p != 0x6BDescription
TRUEnever evaluated
FALSEnever evaluated
p != 0x6B
*p != 0x6BDescription
TRUEnever evaluated
FALSEnever evaluated
)) {
0
48 ERR_put_error(4,(0xfff),(137),__FILE__,112);-
49 return
never executed: return -1;
-1;
never executed: return -1;
0
50 }-
51-
52 if (*
*p++ == 0x6BDescription
TRUEnever evaluated
FALSEnever evaluated
p++ == 0x6B
*p++ == 0x6BDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
53 j = flen - 3;-
54 for (i = 0; i < j
i < jDescription
TRUEnever evaluated
FALSEnever evaluated
; i++) {
0
55 unsigned char c = *p++;-
56 if (c == 0xBA
c == 0xBADescription
TRUEnever evaluated
FALSEnever evaluated
)
0
57 break;
never executed: break;
0
58 if (c != 0xBB
c != 0xBBDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
59 ERR_put_error(4,(0xfff),(138),__FILE__,123);-
60 return
never executed: return -1;
-1;
never executed: return -1;
0
61 }-
62 }
never executed: end of block
0
63-
64 if (i == 0
i == 0Description
TRUEnever evaluated
FALSEnever evaluated
) {
0
65 ERR_put_error(4,(0xfff),(138),__FILE__,129);-
66 return
never executed: return -1;
-1;
never executed: return -1;
0
67 }-
68-
69 j -= i;-
70 }
never executed: end of block
else
0
71 j = flen - 2;
never executed: j = flen - 2;
0
72-
73 if (j < 0
j < 0Description
TRUEnever evaluated
FALSEnever evaluated
|| p[j] != 0xCC
p[j] != 0xCCDescription
TRUEnever evaluated
FALSEnever evaluated
) {
0
74 ERR_put_error(4,(0xfff),(139),__FILE__,138);-
75 return
never executed: return -1;
-1;
never executed: return -1;
0
76 }-
77-
78 memcpy(to, p, j);-
79-
80 return
never executed: return j;
j;
never executed: return j;
0
81}-
82-
83-
84-
85int-
86RSA_X931_hash_id(int nid)-
87{-
88 switch (nid) {-
89 case
never executed: case 64:
64:
never executed: case 64:
0
90 return
never executed: return 0x33;
0x33;
never executed: return 0x33;
0
91 case
never executed: case 672:
672:
never executed: case 672:
0
92 return
never executed: return 0x34;
0x34;
never executed: return 0x34;
0
93 case
never executed: case 673:
673:
never executed: case 673:
0
94 return
never executed: return 0x36;
0x36;
never executed: return 0x36;
0
95 case
never executed: case 674:
674:
never executed: case 674:
0
96 return
never executed: return 0x35;
0x35;
never executed: return 0x35;
0
97 }-
98-
99 return
never executed: return -1;
-1;
never executed: return -1;
0
100}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2