Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/libressl/src/crypto/rc2/rc2ofb64.c |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||
---|---|---|---|---|---|---|---|---|
1 | - | |||||||
2 | - | |||||||
3 | - | |||||||
4 | - | |||||||
5 | - | |||||||
6 | void RC2_ofb64_encrypt(const unsigned char *in, unsigned char *out, | - | ||||||
7 | long length, RC2_KEY *schedule, unsigned char *ivec, | - | ||||||
8 | int *num) | - | ||||||
9 | { | - | ||||||
10 | unsigned long v0,v1,t; | - | ||||||
11 | int n= *num; | - | ||||||
12 | long l=length; | - | ||||||
13 | unsigned char d[8]; | - | ||||||
14 | char *dp; | - | ||||||
15 | unsigned long ti[2]; | - | ||||||
16 | unsigned char *iv; | - | ||||||
17 | int save=0; | - | ||||||
18 | - | |||||||
19 | iv=(unsigned char *)ivec; | - | ||||||
20 | (v0 =((unsigned long)(*((iv)++))) , v0|=((unsigned long)(*((iv)++)))<< 8L, v0|=((unsigned long)(*((iv)++)))<<16L, v0|=((unsigned long)(*((iv)++)))<<24L); | - | ||||||
21 | (v1 =((unsigned long)(*((iv)++))) , v1|=((unsigned long)(*((iv)++)))<< 8L, v1|=((unsigned long)(*((iv)++)))<<16L, v1|=((unsigned long)(*((iv)++)))<<24L); | - | ||||||
22 | ti[0]=v0; | - | ||||||
23 | ti[1]=v1; | - | ||||||
24 | dp=(char *)d; | - | ||||||
25 | (*((dp)++)=(unsigned char)(((v0) )&0xff), *((dp)++)=(unsigned char)(((v0)>> 8L)&0xff), *((dp)++)=(unsigned char)(((v0)>>16L)&0xff), *((dp)++)=(unsigned char)(((v0)>>24L)&0xff)); | - | ||||||
26 | (*((dp)++)=(unsigned char)(((v1) )&0xff), *((dp)++)=(unsigned char)(((v1)>> 8L)&0xff), *((dp)++)=(unsigned char)(((v1)>>16L)&0xff), *((dp)++)=(unsigned char)(((v1)>>24L)&0xff)); | - | ||||||
27 | while (l--
| 4-3552 | ||||||
28 | { | - | ||||||
29 | if (n == 0
| 444-3108 | ||||||
30 | { | - | ||||||
31 | RC2_encrypt((unsigned long *)ti,schedule); | - | ||||||
32 | dp=(char *)d; | - | ||||||
33 | t=ti[0]; (*((dp)++)=(unsigned char)(((t) )&0xff), *((dp)++)=(unsigned char)(((t)>> 8L)&0xff), *((dp)++)=(unsigned char)(((t)>>16L)&0xff), *((dp)++)=(unsigned char)(((t)>>24L)&0xff)); | - | ||||||
34 | t=ti[1]; (*((dp)++)=(unsigned char)(((t) )&0xff), *((dp)++)=(unsigned char)(((t)>> 8L)&0xff), *((dp)++)=(unsigned char)(((t)>>16L)&0xff), *((dp)++)=(unsigned char)(((t)>>24L)&0xff)); | - | ||||||
35 | save++; | - | ||||||
36 | } executed 444 times by 1 test: end of block Executed by:
| 444 | ||||||
37 | *(out++)= *(in++)^d[n]; | - | ||||||
38 | n=(n+1)&0x07; | - | ||||||
39 | } executed 3552 times by 1 test: end of block Executed by:
| 3552 | ||||||
40 | if (save
| 0-4 | ||||||
41 | { | - | ||||||
42 | v0=ti[0]; | - | ||||||
43 | v1=ti[1]; | - | ||||||
44 | iv=(unsigned char *)ivec; | - | ||||||
45 | (*((iv)++)=(unsigned char)(((v0) )&0xff), *((iv)++)=(unsigned char)(((v0)>> 8L)&0xff), *((iv)++)=(unsigned char)(((v0)>>16L)&0xff), *((iv)++)=(unsigned char)(((v0)>>24L)&0xff)); | - | ||||||
46 | (*((iv)++)=(unsigned char)(((v1) )&0xff), *((iv)++)=(unsigned char)(((v1)>> 8L)&0xff), *((iv)++)=(unsigned char)(((v1)>>16L)&0xff), *((iv)++)=(unsigned char)(((v1)>>24L)&0xff)); | - | ||||||
47 | } executed 4 times by 1 test: end of block Executed by:
| 4 | ||||||
48 | t=v0=v1=ti[0]=ti[1]=0; | - | ||||||
49 | *num=n; | - | ||||||
50 | } executed 4 times by 1 test: end of block Executed by:
| 4 | ||||||
Switch to Source code | Preprocessed file |