| 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 blockExecuted by:
| 444 | ||||||
| 37 | *(out++)= *(in++)^d[n]; | - | ||||||
| 38 | n=(n+1)&0x07; | - | ||||||
| 39 | } executed 3552 times by 1 test: end of blockExecuted 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 blockExecuted by:
| 4 | ||||||
| 48 | t=v0=v1=ti[0]=ti[1]=0; | - | ||||||
| 49 | *num=n; | - | ||||||
| 50 | } executed 4 times by 1 test: end of blockExecuted by:
| 4 | ||||||
| Switch to Source code | Preprocessed file |