OpenCoverage

bf_skey.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/bf/bf_skey.c
Source codeSwitch to Preprocessed file
LineSourceCount
1/*-
2 * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.-
3 *-
4 * Licensed under the OpenSSL license (the "License"). You may not use-
5 * this file except in compliance with the License. You can obtain a copy-
6 * in the file LICENSE in the source distribution or at-
7 * https://www.openssl.org/source/license.html-
8 */-
9-
10#include <stdio.h>-
11#include <string.h>-
12#include <openssl/blowfish.h>-
13#include "bf_locl.h"-
14#include "bf_pi.h"-
15-
16void BF_set_key(BF_KEY *key, int len, const unsigned char *data)-
17{-
18 int i;-
19 BF_LONG *p, ri, in[2];-
20 const unsigned char *d, *end;-
21-
22 memcpy(key, &bf_init, sizeof(BF_KEY));-
23 p = key->P;-
24-
25 if (len > ((BF_ROUNDS + 2) * 4))
len > ((16 + 2) * 4)Description
TRUEnever evaluated
FALSEevaluated 95 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
0-95
26 len = (BF_ROUNDS + 2) * 4;
never executed: len = (16 + 2) * 4;
0
27-
28 d = data;-
29 end = &(data[len]);-
30 for (i = 0; i < (BF_ROUNDS + 2); i++) {
i < (16 + 2)Description
TRUEevaluated 1710 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 95 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
95-1710
31 ri = *(d++);-
32 if (d >= end)
d >= endDescription
TRUEevaluated 41 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 1669 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
41-1669
33 d = data;
executed 41 times by 1 test: d = data;
Executed by:
  • libcrypto.so.1.1
41
34-
35 ri <<= 8;-
36 ri |= *(d++);-
37 if (d >= end)
d >= endDescription
TRUEevaluated 78 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 1632 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
78-1632
38 d = data;
executed 78 times by 1 test: d = data;
Executed by:
  • libcrypto.so.1.1
78
39-
40 ri <<= 8;-
41 ri |= *(d++);-
42 if (d >= end)
d >= endDescription
TRUEevaluated 41 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 1669 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
41-1669
43 d = data;
executed 41 times by 1 test: d = data;
Executed by:
  • libcrypto.so.1.1
41
44-
45 ri <<= 8;-
46 ri |= *(d++);-
47 if (d >= end)
d >= endDescription
TRUEevaluated 558 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 1152 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
558-1152
48 d = data;
executed 558 times by 1 test: d = data;
Executed by:
  • libcrypto.so.1.1
558
49-
50 p[i] ^= ri;-
51 }
executed 1710 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
1710
52-
53 in[0] = 0L;-
54 in[1] = 0L;-
55 for (i = 0; i < (BF_ROUNDS + 2); i += 2) {
i < (16 + 2)Description
TRUEevaluated 855 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 95 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
95-855
56 BF_encrypt(in, key);-
57 p[i] = in[0];-
58 p[i + 1] = in[1];-
59 }
executed 855 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
855
60-
61 p = key->S;-
62 for (i = 0; i < 4 * 256; i += 2) {
i < 4 * 256Description
TRUEevaluated 48640 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
FALSEevaluated 95 times by 1 test
Evaluated by:
  • libcrypto.so.1.1
95-48640
63 BF_encrypt(in, key);-
64 p[i] = in[0];-
65 p[i + 1] = in[1];-
66 }
executed 48640 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
48640
67}
executed 95 times by 1 test: end of block
Executed by:
  • libcrypto.so.1.1
95
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.2.2