Coverage Report

Created: 2025-12-31 06:58

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/openssl30/include/internal/constant_time.h
Line
Count
Source
1
/*
2
 * Copyright 2014-2025 The OpenSSL Project Authors. All Rights Reserved.
3
 *
4
 * Licensed under the Apache License 2.0 (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
#ifndef OSSL_INTERNAL_CONSTANT_TIME_H
11
#define OSSL_INTERNAL_CONSTANT_TIME_H
12
#pragma once
13
14
#include <stdlib.h>
15
#include <string.h>
16
#include <openssl/e_os2.h> /* For 'ossl_inline' */
17
18
/*-
19
 * The boolean methods return a bitmask of all ones (0xff...f) for true
20
 * and 0 for false. This is useful for choosing a value based on the result
21
 * of a conditional in constant time. For example,
22
 *      if (a < b) {
23
 *        c = a;
24
 *      } else {
25
 *        c = b;
26
 *      }
27
 * can be written as
28
 *      unsigned int lt = constant_time_lt(a, b);
29
 *      c = constant_time_select(lt, a, b);
30
 */
31
32
/* Returns the given value with the MSB copied to all the other bits. */
33
static ossl_inline unsigned int constant_time_msb(unsigned int a);
34
/* Convenience method for uint32_t. */
35
static ossl_inline uint32_t constant_time_msb_32(uint32_t a);
36
/* Convenience method for uint64_t. */
37
static ossl_inline uint64_t constant_time_msb_64(uint64_t a);
38
39
/* Returns 0xff..f if a < b and 0 otherwise. */
40
static ossl_inline unsigned int constant_time_lt(unsigned int a,
41
    unsigned int b);
42
/* Convenience method for getting an 8-bit mask. */
43
static ossl_inline unsigned char constant_time_lt_8(unsigned int a,
44
    unsigned int b);
45
/* Convenience method for uint64_t. */
46
static ossl_inline uint64_t constant_time_lt_64(uint64_t a, uint64_t b);
47
48
/* Returns 0xff..f if a >= b and 0 otherwise. */
49
static ossl_inline unsigned int constant_time_ge(unsigned int a,
50
    unsigned int b);
51
/* Convenience method for getting an 8-bit mask. */
52
static ossl_inline unsigned char constant_time_ge_8(unsigned int a,
53
    unsigned int b);
54
55
/* Returns 0xff..f if a == 0 and 0 otherwise. */
56
static ossl_inline unsigned int constant_time_is_zero(unsigned int a);
57
/* Convenience method for getting an 8-bit mask. */
58
static ossl_inline unsigned char constant_time_is_zero_8(unsigned int a);
59
/* Convenience method for getting a 32-bit mask. */
60
static ossl_inline uint32_t constant_time_is_zero_32(uint32_t a);
61
62
/* Returns 0xff..f if a == b and 0 otherwise. */
63
static ossl_inline unsigned int constant_time_eq(unsigned int a,
64
    unsigned int b);
65
/* Convenience method for getting an 8-bit mask. */
66
static ossl_inline unsigned char constant_time_eq_8(unsigned int a,
67
    unsigned int b);
68
/* Signed integers. */
69
static ossl_inline unsigned int constant_time_eq_int(int a, int b);
70
/* Convenience method for getting an 8-bit mask. */
71
static ossl_inline unsigned char constant_time_eq_int_8(int a, int b);
72
73
/*-
74
 * Returns (mask & a) | (~mask & b).
75
 *
76
 * When |mask| is all 1s or all 0s (as returned by the methods above),
77
 * the select methods return either |a| (if |mask| is nonzero) or |b|
78
 * (if |mask| is zero).
79
 */
80
static ossl_inline unsigned int constant_time_select(unsigned int mask,
81
    unsigned int a,
82
    unsigned int b);
83
/* Convenience method for unsigned chars. */
84
static ossl_inline unsigned char constant_time_select_8(unsigned char mask,
85
    unsigned char a,
86
    unsigned char b);
87
88
/* Convenience method for uint32_t. */
89
static ossl_inline uint32_t constant_time_select_32(uint32_t mask, uint32_t a,
90
    uint32_t b);
91
92
/* Convenience method for uint64_t. */
93
static ossl_inline uint64_t constant_time_select_64(uint64_t mask, uint64_t a,
94
    uint64_t b);
95
/* Convenience method for signed integers. */
96
static ossl_inline int constant_time_select_int(unsigned int mask, int a,
97
    int b);
98
99
static ossl_inline unsigned int constant_time_msb(unsigned int a)
100
271M
{
101
271M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
271M
}
err.c:constant_time_msb
Line
Count
Source
100
11.3k
{
101
11.3k
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
11.3k
}
bn_lib.c:constant_time_msb
Line
Count
Source
100
69.6M
{
101
69.6M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
69.6M
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_msb
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_msb
rsa_ossl.c:constant_time_msb
Line
Count
Source
100
11.3k
{
101
11.3k
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
11.3k
}
rsa_pk1.c:constant_time_msb
Line
Count
Source
100
2.38M
{
101
2.38M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
2.38M
}
Unexecuted instantiation: rsa_pmeth.c:constant_time_msb
rsa_enc.c:constant_time_msb
Line
Count
Source
100
11.3k
{
101
11.3k
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
11.3k
}
cipher_aes_cbc_hmac_sha1_hw.c:constant_time_msb
Line
Count
Source
100
222
{
101
222
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
222
}
cipher_aes_cbc_hmac_sha256_hw.c:constant_time_msb
Line
Count
Source
100
238
{
101
238
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
238
}
Unexecuted instantiation: s3_cbc.c:constant_time_msb
Unexecuted instantiation: ciphercommon_block.c:constant_time_msb
tls_pad.c:constant_time_msb
Line
Count
Source
100
3.94M
{
101
3.94M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
3.94M
}
bn_exp.c:constant_time_msb
Line
Count
Source
100
195M
{
101
195M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
195M
}
Unexecuted instantiation: rsaz_exp.c:constant_time_msb
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_msb
Unexecuted instantiation: set_key.c:constant_time_msb
Unexecuted instantiation: curve448.c:constant_time_msb
Unexecuted instantiation: curve448_tables.c:constant_time_msb
Unexecuted instantiation: eddsa.c:constant_time_msb
Unexecuted instantiation: f_generic.c:constant_time_msb
Unexecuted instantiation: scalar.c:constant_time_msb
Unexecuted instantiation: rsa_oaep.c:constant_time_msb
Unexecuted instantiation: f_impl64.c:constant_time_msb
Unexecuted instantiation: statem_srvr.c:constant_time_msb
Unexecuted instantiation: crmf_lib.c:constant_time_msb
103
104
static ossl_inline uint32_t constant_time_msb_32(uint32_t a)
105
0
{
106
0
    return 0 - (a >> 31);
107
0
}
Unexecuted instantiation: err.c:constant_time_msb_32
Unexecuted instantiation: bn_lib.c:constant_time_msb_32
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_msb_32
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_msb_32
Unexecuted instantiation: rsa_ossl.c:constant_time_msb_32
Unexecuted instantiation: rsa_pk1.c:constant_time_msb_32
Unexecuted instantiation: rsa_pmeth.c:constant_time_msb_32
Unexecuted instantiation: rsa_enc.c:constant_time_msb_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_msb_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_msb_32
Unexecuted instantiation: s3_cbc.c:constant_time_msb_32
Unexecuted instantiation: ciphercommon_block.c:constant_time_msb_32
Unexecuted instantiation: tls_pad.c:constant_time_msb_32
Unexecuted instantiation: bn_exp.c:constant_time_msb_32
Unexecuted instantiation: rsaz_exp.c:constant_time_msb_32
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_msb_32
Unexecuted instantiation: set_key.c:constant_time_msb_32
Unexecuted instantiation: curve448.c:constant_time_msb_32
Unexecuted instantiation: curve448_tables.c:constant_time_msb_32
Unexecuted instantiation: eddsa.c:constant_time_msb_32
Unexecuted instantiation: f_generic.c:constant_time_msb_32
Unexecuted instantiation: scalar.c:constant_time_msb_32
Unexecuted instantiation: rsa_oaep.c:constant_time_msb_32
Unexecuted instantiation: f_impl64.c:constant_time_msb_32
Unexecuted instantiation: statem_srvr.c:constant_time_msb_32
Unexecuted instantiation: crmf_lib.c:constant_time_msb_32
108
109
static ossl_inline uint64_t constant_time_msb_64(uint64_t a)
110
1.51k
{
111
1.51k
    return 0 - (a >> 63);
112
1.51k
}
Unexecuted instantiation: err.c:constant_time_msb_64
Unexecuted instantiation: bn_lib.c:constant_time_msb_64
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_msb_64
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_msb_64
Unexecuted instantiation: rsa_ossl.c:constant_time_msb_64
Unexecuted instantiation: rsa_pk1.c:constant_time_msb_64
Unexecuted instantiation: rsa_pmeth.c:constant_time_msb_64
Unexecuted instantiation: rsa_enc.c:constant_time_msb_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_msb_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_msb_64
Unexecuted instantiation: s3_cbc.c:constant_time_msb_64
Unexecuted instantiation: ciphercommon_block.c:constant_time_msb_64
Unexecuted instantiation: tls_pad.c:constant_time_msb_64
Unexecuted instantiation: bn_exp.c:constant_time_msb_64
Unexecuted instantiation: rsaz_exp.c:constant_time_msb_64
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_msb_64
Unexecuted instantiation: set_key.c:constant_time_msb_64
curve448.c:constant_time_msb_64
Line
Count
Source
110
156
{
111
156
    return 0 - (a >> 63);
112
156
}
Unexecuted instantiation: curve448_tables.c:constant_time_msb_64
Unexecuted instantiation: eddsa.c:constant_time_msb_64
f_generic.c:constant_time_msb_64
Line
Count
Source
110
1.22k
{
111
1.22k
    return 0 - (a >> 63);
112
1.22k
}
scalar.c:constant_time_msb_64
Line
Count
Source
110
132
{
111
132
    return 0 - (a >> 63);
112
132
}
Unexecuted instantiation: rsa_oaep.c:constant_time_msb_64
Unexecuted instantiation: f_impl64.c:constant_time_msb_64
Unexecuted instantiation: statem_srvr.c:constant_time_msb_64
Unexecuted instantiation: crmf_lib.c:constant_time_msb_64
113
114
static ossl_inline size_t constant_time_msb_s(size_t a)
115
43.0M
{
116
43.0M
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
43.0M
}
Unexecuted instantiation: err.c:constant_time_msb_s
Unexecuted instantiation: bn_lib.c:constant_time_msb_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_msb_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_msb_s
Unexecuted instantiation: rsa_ossl.c:constant_time_msb_s
Unexecuted instantiation: rsa_pk1.c:constant_time_msb_s
Unexecuted instantiation: rsa_pmeth.c:constant_time_msb_s
rsa_enc.c:constant_time_msb_s
Line
Count
Source
115
11.3k
{
116
11.3k
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
11.3k
}
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_msb_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_msb_s
s3_cbc.c:constant_time_msb_s
Line
Count
Source
115
168k
{
116
168k
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
168k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_msb_s
tls_pad.c:constant_time_msb_s
Line
Count
Source
115
42.0M
{
116
42.0M
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
42.0M
}
Unexecuted instantiation: bn_exp.c:constant_time_msb_s
Unexecuted instantiation: rsaz_exp.c:constant_time_msb_s
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_msb_s
Unexecuted instantiation: set_key.c:constant_time_msb_s
curve448.c:constant_time_msb_s
Line
Count
Source
115
846k
{
116
846k
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
846k
}
Unexecuted instantiation: curve448_tables.c:constant_time_msb_s
Unexecuted instantiation: eddsa.c:constant_time_msb_s
Unexecuted instantiation: f_generic.c:constant_time_msb_s
Unexecuted instantiation: scalar.c:constant_time_msb_s
Unexecuted instantiation: rsa_oaep.c:constant_time_msb_s
Unexecuted instantiation: f_impl64.c:constant_time_msb_s
Unexecuted instantiation: statem_srvr.c:constant_time_msb_s
Unexecuted instantiation: crmf_lib.c:constant_time_msb_s
118
119
static ossl_inline unsigned int constant_time_lt(unsigned int a,
120
    unsigned int b)
121
460
{
122
460
    return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));
123
460
}
Unexecuted instantiation: err.c:constant_time_lt
Unexecuted instantiation: bn_lib.c:constant_time_lt
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_lt
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_lt
Unexecuted instantiation: rsa_ossl.c:constant_time_lt
Unexecuted instantiation: rsa_pk1.c:constant_time_lt
Unexecuted instantiation: rsa_pmeth.c:constant_time_lt
Unexecuted instantiation: rsa_enc.c:constant_time_lt
cipher_aes_cbc_hmac_sha1_hw.c:constant_time_lt
Line
Count
Source
121
222
{
122
222
    return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));
123
222
}
cipher_aes_cbc_hmac_sha256_hw.c:constant_time_lt
Line
Count
Source
121
238
{
122
238
    return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));
123
238
}
Unexecuted instantiation: s3_cbc.c:constant_time_lt
Unexecuted instantiation: ciphercommon_block.c:constant_time_lt
Unexecuted instantiation: tls_pad.c:constant_time_lt
Unexecuted instantiation: bn_exp.c:constant_time_lt
Unexecuted instantiation: rsaz_exp.c:constant_time_lt
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_lt
Unexecuted instantiation: set_key.c:constant_time_lt
Unexecuted instantiation: curve448.c:constant_time_lt
Unexecuted instantiation: curve448_tables.c:constant_time_lt
Unexecuted instantiation: eddsa.c:constant_time_lt
Unexecuted instantiation: f_generic.c:constant_time_lt
Unexecuted instantiation: scalar.c:constant_time_lt
Unexecuted instantiation: rsa_oaep.c:constant_time_lt
Unexecuted instantiation: f_impl64.c:constant_time_lt
Unexecuted instantiation: statem_srvr.c:constant_time_lt
Unexecuted instantiation: crmf_lib.c:constant_time_lt
124
125
static ossl_inline size_t constant_time_lt_s(size_t a, size_t b)
126
32.5M
{
127
32.5M
    return constant_time_msb_s(a ^ ((a ^ b) | ((a - b) ^ b)));
128
32.5M
}
Unexecuted instantiation: err.c:constant_time_lt_s
Unexecuted instantiation: bn_lib.c:constant_time_lt_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_lt_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_lt_s
Unexecuted instantiation: rsa_ossl.c:constant_time_lt_s
Unexecuted instantiation: rsa_pk1.c:constant_time_lt_s
Unexecuted instantiation: rsa_pmeth.c:constant_time_lt_s
Unexecuted instantiation: rsa_enc.c:constant_time_lt_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_lt_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_lt_s
s3_cbc.c:constant_time_lt_s
Line
Count
Source
126
166k
{
127
166k
    return constant_time_msb_s(a ^ ((a ^ b) | ((a - b) ^ b)));
128
166k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_lt_s
tls_pad.c:constant_time_lt_s
Line
Count
Source
126
32.4M
{
127
32.4M
    return constant_time_msb_s(a ^ ((a ^ b) | ((a - b) ^ b)));
128
32.4M
}
Unexecuted instantiation: bn_exp.c:constant_time_lt_s
Unexecuted instantiation: rsaz_exp.c:constant_time_lt_s
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_lt_s
Unexecuted instantiation: set_key.c:constant_time_lt_s
Unexecuted instantiation: curve448.c:constant_time_lt_s
Unexecuted instantiation: curve448_tables.c:constant_time_lt_s
Unexecuted instantiation: eddsa.c:constant_time_lt_s
Unexecuted instantiation: f_generic.c:constant_time_lt_s
Unexecuted instantiation: scalar.c:constant_time_lt_s
Unexecuted instantiation: rsa_oaep.c:constant_time_lt_s
Unexecuted instantiation: f_impl64.c:constant_time_lt_s
Unexecuted instantiation: statem_srvr.c:constant_time_lt_s
Unexecuted instantiation: crmf_lib.c:constant_time_lt_s
129
130
static ossl_inline unsigned char constant_time_lt_8(unsigned int a,
131
    unsigned int b)
132
0
{
133
0
    return (unsigned char)constant_time_lt(a, b);
134
0
}
Unexecuted instantiation: err.c:constant_time_lt_8
Unexecuted instantiation: bn_lib.c:constant_time_lt_8
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_lt_8
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_lt_8
Unexecuted instantiation: rsa_ossl.c:constant_time_lt_8
Unexecuted instantiation: rsa_pk1.c:constant_time_lt_8
Unexecuted instantiation: rsa_pmeth.c:constant_time_lt_8
Unexecuted instantiation: rsa_enc.c:constant_time_lt_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_lt_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_lt_8
Unexecuted instantiation: s3_cbc.c:constant_time_lt_8
Unexecuted instantiation: ciphercommon_block.c:constant_time_lt_8
Unexecuted instantiation: tls_pad.c:constant_time_lt_8
Unexecuted instantiation: bn_exp.c:constant_time_lt_8
Unexecuted instantiation: rsaz_exp.c:constant_time_lt_8
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_lt_8
Unexecuted instantiation: set_key.c:constant_time_lt_8
Unexecuted instantiation: curve448.c:constant_time_lt_8
Unexecuted instantiation: curve448_tables.c:constant_time_lt_8
Unexecuted instantiation: eddsa.c:constant_time_lt_8
Unexecuted instantiation: f_generic.c:constant_time_lt_8
Unexecuted instantiation: scalar.c:constant_time_lt_8
Unexecuted instantiation: rsa_oaep.c:constant_time_lt_8
Unexecuted instantiation: f_impl64.c:constant_time_lt_8
Unexecuted instantiation: statem_srvr.c:constant_time_lt_8
Unexecuted instantiation: crmf_lib.c:constant_time_lt_8
135
136
static ossl_inline uint64_t constant_time_lt_64(uint64_t a, uint64_t b)
137
0
{
138
0
    return constant_time_msb_64(a ^ ((a ^ b) | ((a - b) ^ b)));
139
0
}
Unexecuted instantiation: err.c:constant_time_lt_64
Unexecuted instantiation: bn_lib.c:constant_time_lt_64
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_lt_64
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_lt_64
Unexecuted instantiation: rsa_ossl.c:constant_time_lt_64
Unexecuted instantiation: rsa_pk1.c:constant_time_lt_64
Unexecuted instantiation: rsa_pmeth.c:constant_time_lt_64
Unexecuted instantiation: rsa_enc.c:constant_time_lt_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_lt_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_lt_64
Unexecuted instantiation: s3_cbc.c:constant_time_lt_64
Unexecuted instantiation: ciphercommon_block.c:constant_time_lt_64
Unexecuted instantiation: tls_pad.c:constant_time_lt_64
Unexecuted instantiation: bn_exp.c:constant_time_lt_64
Unexecuted instantiation: rsaz_exp.c:constant_time_lt_64
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_lt_64
Unexecuted instantiation: set_key.c:constant_time_lt_64
Unexecuted instantiation: curve448.c:constant_time_lt_64
Unexecuted instantiation: curve448_tables.c:constant_time_lt_64
Unexecuted instantiation: eddsa.c:constant_time_lt_64
Unexecuted instantiation: f_generic.c:constant_time_lt_64
Unexecuted instantiation: scalar.c:constant_time_lt_64
Unexecuted instantiation: rsa_oaep.c:constant_time_lt_64
Unexecuted instantiation: f_impl64.c:constant_time_lt_64
Unexecuted instantiation: statem_srvr.c:constant_time_lt_64
Unexecuted instantiation: crmf_lib.c:constant_time_lt_64
140
141
#ifdef BN_ULONG
142
static ossl_inline BN_ULONG constant_time_msb_bn(BN_ULONG a)
143
18.7M
{
144
18.7M
    return 0 - (a >> (sizeof(a) * 8 - 1));
145
18.7M
}
Unexecuted instantiation: err.c:constant_time_msb_bn
bn_lib.c:constant_time_msb_bn
Line
Count
Source
143
18.7M
{
144
18.7M
    return 0 - (a >> (sizeof(a) * 8 - 1));
145
18.7M
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_msb_bn
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_msb_bn
Unexecuted instantiation: rsa_ossl.c:constant_time_msb_bn
Unexecuted instantiation: rsa_enc.c:constant_time_msb_bn
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_msb_bn
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_msb_bn
Unexecuted instantiation: ciphercommon_block.c:constant_time_msb_bn
Unexecuted instantiation: tls_pad.c:constant_time_msb_bn
Unexecuted instantiation: bn_exp.c:constant_time_msb_bn
Unexecuted instantiation: rsaz_exp.c:constant_time_msb_bn
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_msb_bn
Unexecuted instantiation: eddsa.c:constant_time_msb_bn
Unexecuted instantiation: statem_srvr.c:constant_time_msb_bn
Unexecuted instantiation: crmf_lib.c:constant_time_msb_bn
146
147
static ossl_inline BN_ULONG constant_time_lt_bn(BN_ULONG a, BN_ULONG b)
148
18.7M
{
149
18.7M
    return constant_time_msb_bn(a ^ ((a ^ b) | ((a - b) ^ b)));
150
18.7M
}
Unexecuted instantiation: err.c:constant_time_lt_bn
bn_lib.c:constant_time_lt_bn
Line
Count
Source
148
18.7M
{
149
18.7M
    return constant_time_msb_bn(a ^ ((a ^ b) | ((a - b) ^ b)));
150
18.7M
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_lt_bn
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_lt_bn
Unexecuted instantiation: rsa_ossl.c:constant_time_lt_bn
Unexecuted instantiation: rsa_enc.c:constant_time_lt_bn
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_lt_bn
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_lt_bn
Unexecuted instantiation: ciphercommon_block.c:constant_time_lt_bn
Unexecuted instantiation: tls_pad.c:constant_time_lt_bn
Unexecuted instantiation: bn_exp.c:constant_time_lt_bn
Unexecuted instantiation: rsaz_exp.c:constant_time_lt_bn
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_lt_bn
Unexecuted instantiation: eddsa.c:constant_time_lt_bn
Unexecuted instantiation: statem_srvr.c:constant_time_lt_bn
Unexecuted instantiation: crmf_lib.c:constant_time_lt_bn
151
152
static ossl_inline BN_ULONG constant_time_is_zero_bn(BN_ULONG a)
153
27.0k
{
154
27.0k
    return constant_time_msb_bn(~a & (a - 1));
155
27.0k
}
Unexecuted instantiation: err.c:constant_time_is_zero_bn
bn_lib.c:constant_time_is_zero_bn
Line
Count
Source
153
27.0k
{
154
27.0k
    return constant_time_msb_bn(~a & (a - 1));
155
27.0k
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_is_zero_bn
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_is_zero_bn
Unexecuted instantiation: rsa_ossl.c:constant_time_is_zero_bn
Unexecuted instantiation: rsa_enc.c:constant_time_is_zero_bn
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_is_zero_bn
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_is_zero_bn
Unexecuted instantiation: ciphercommon_block.c:constant_time_is_zero_bn
Unexecuted instantiation: tls_pad.c:constant_time_is_zero_bn
Unexecuted instantiation: bn_exp.c:constant_time_is_zero_bn
Unexecuted instantiation: rsaz_exp.c:constant_time_is_zero_bn
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_is_zero_bn
Unexecuted instantiation: eddsa.c:constant_time_is_zero_bn
Unexecuted instantiation: statem_srvr.c:constant_time_is_zero_bn
Unexecuted instantiation: crmf_lib.c:constant_time_is_zero_bn
156
157
static ossl_inline BN_ULONG constant_time_eq_bn(BN_ULONG a,
158
    BN_ULONG b)
159
6.75k
{
160
6.75k
    return constant_time_is_zero_bn(a ^ b);
161
6.75k
}
Unexecuted instantiation: err.c:constant_time_eq_bn
bn_lib.c:constant_time_eq_bn
Line
Count
Source
159
6.75k
{
160
6.75k
    return constant_time_is_zero_bn(a ^ b);
161
6.75k
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_eq_bn
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_eq_bn
Unexecuted instantiation: rsa_ossl.c:constant_time_eq_bn
Unexecuted instantiation: rsa_enc.c:constant_time_eq_bn
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_eq_bn
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_eq_bn
Unexecuted instantiation: ciphercommon_block.c:constant_time_eq_bn
Unexecuted instantiation: tls_pad.c:constant_time_eq_bn
Unexecuted instantiation: bn_exp.c:constant_time_eq_bn
Unexecuted instantiation: rsaz_exp.c:constant_time_eq_bn
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_eq_bn
Unexecuted instantiation: eddsa.c:constant_time_eq_bn
Unexecuted instantiation: statem_srvr.c:constant_time_eq_bn
Unexecuted instantiation: crmf_lib.c:constant_time_eq_bn
162
#endif
163
164
static ossl_inline unsigned int constant_time_ge(unsigned int a,
165
    unsigned int b)
166
460
{
167
460
    return ~constant_time_lt(a, b);
168
460
}
Unexecuted instantiation: err.c:constant_time_ge
Unexecuted instantiation: bn_lib.c:constant_time_ge
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_ge
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_ge
Unexecuted instantiation: rsa_ossl.c:constant_time_ge
Unexecuted instantiation: rsa_pk1.c:constant_time_ge
Unexecuted instantiation: rsa_pmeth.c:constant_time_ge
Unexecuted instantiation: rsa_enc.c:constant_time_ge
cipher_aes_cbc_hmac_sha1_hw.c:constant_time_ge
Line
Count
Source
166
222
{
167
222
    return ~constant_time_lt(a, b);
168
222
}
cipher_aes_cbc_hmac_sha256_hw.c:constant_time_ge
Line
Count
Source
166
238
{
167
238
    return ~constant_time_lt(a, b);
168
238
}
Unexecuted instantiation: s3_cbc.c:constant_time_ge
Unexecuted instantiation: ciphercommon_block.c:constant_time_ge
Unexecuted instantiation: tls_pad.c:constant_time_ge
Unexecuted instantiation: bn_exp.c:constant_time_ge
Unexecuted instantiation: rsaz_exp.c:constant_time_ge
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_ge
Unexecuted instantiation: set_key.c:constant_time_ge
Unexecuted instantiation: curve448.c:constant_time_ge
Unexecuted instantiation: curve448_tables.c:constant_time_ge
Unexecuted instantiation: eddsa.c:constant_time_ge
Unexecuted instantiation: f_generic.c:constant_time_ge
Unexecuted instantiation: scalar.c:constant_time_ge
Unexecuted instantiation: rsa_oaep.c:constant_time_ge
Unexecuted instantiation: f_impl64.c:constant_time_ge
Unexecuted instantiation: statem_srvr.c:constant_time_ge
Unexecuted instantiation: crmf_lib.c:constant_time_ge
169
170
static ossl_inline size_t constant_time_ge_s(size_t a, size_t b)
171
9.70M
{
172
9.70M
    return ~constant_time_lt_s(a, b);
173
9.70M
}
Unexecuted instantiation: err.c:constant_time_ge_s
Unexecuted instantiation: bn_lib.c:constant_time_ge_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_ge_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_ge_s
Unexecuted instantiation: rsa_ossl.c:constant_time_ge_s
Unexecuted instantiation: rsa_pk1.c:constant_time_ge_s
Unexecuted instantiation: rsa_pmeth.c:constant_time_ge_s
Unexecuted instantiation: rsa_enc.c:constant_time_ge_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_ge_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_ge_s
s3_cbc.c:constant_time_ge_s
Line
Count
Source
171
166k
{
172
166k
    return ~constant_time_lt_s(a, b);
173
166k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_ge_s
tls_pad.c:constant_time_ge_s
Line
Count
Source
171
9.53M
{
172
9.53M
    return ~constant_time_lt_s(a, b);
173
9.53M
}
Unexecuted instantiation: bn_exp.c:constant_time_ge_s
Unexecuted instantiation: rsaz_exp.c:constant_time_ge_s
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_ge_s
Unexecuted instantiation: set_key.c:constant_time_ge_s
Unexecuted instantiation: curve448.c:constant_time_ge_s
Unexecuted instantiation: curve448_tables.c:constant_time_ge_s
Unexecuted instantiation: eddsa.c:constant_time_ge_s
Unexecuted instantiation: f_generic.c:constant_time_ge_s
Unexecuted instantiation: scalar.c:constant_time_ge_s
Unexecuted instantiation: rsa_oaep.c:constant_time_ge_s
Unexecuted instantiation: f_impl64.c:constant_time_ge_s
Unexecuted instantiation: statem_srvr.c:constant_time_ge_s
Unexecuted instantiation: crmf_lib.c:constant_time_ge_s
174
175
static ossl_inline unsigned char constant_time_ge_8(unsigned int a,
176
    unsigned int b)
177
0
{
178
0
    return (unsigned char)constant_time_ge(a, b);
179
0
}
Unexecuted instantiation: err.c:constant_time_ge_8
Unexecuted instantiation: bn_lib.c:constant_time_ge_8
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_ge_8
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_ge_8
Unexecuted instantiation: rsa_ossl.c:constant_time_ge_8
Unexecuted instantiation: rsa_pk1.c:constant_time_ge_8
Unexecuted instantiation: rsa_pmeth.c:constant_time_ge_8
Unexecuted instantiation: rsa_enc.c:constant_time_ge_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_ge_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_ge_8
Unexecuted instantiation: s3_cbc.c:constant_time_ge_8
Unexecuted instantiation: ciphercommon_block.c:constant_time_ge_8
Unexecuted instantiation: tls_pad.c:constant_time_ge_8
Unexecuted instantiation: bn_exp.c:constant_time_ge_8
Unexecuted instantiation: rsaz_exp.c:constant_time_ge_8
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_ge_8
Unexecuted instantiation: set_key.c:constant_time_ge_8
Unexecuted instantiation: curve448.c:constant_time_ge_8
Unexecuted instantiation: curve448_tables.c:constant_time_ge_8
Unexecuted instantiation: eddsa.c:constant_time_ge_8
Unexecuted instantiation: f_generic.c:constant_time_ge_8
Unexecuted instantiation: scalar.c:constant_time_ge_8
Unexecuted instantiation: rsa_oaep.c:constant_time_ge_8
Unexecuted instantiation: f_impl64.c:constant_time_ge_8
Unexecuted instantiation: statem_srvr.c:constant_time_ge_8
Unexecuted instantiation: crmf_lib.c:constant_time_ge_8
180
181
static ossl_inline unsigned char constant_time_ge_8_s(size_t a, size_t b)
182
9.53M
{
183
9.53M
    return (unsigned char)constant_time_ge_s(a, b);
184
9.53M
}
Unexecuted instantiation: err.c:constant_time_ge_8_s
Unexecuted instantiation: bn_lib.c:constant_time_ge_8_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_ge_8_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_ge_8_s
Unexecuted instantiation: rsa_ossl.c:constant_time_ge_8_s
Unexecuted instantiation: rsa_pk1.c:constant_time_ge_8_s
Unexecuted instantiation: rsa_pmeth.c:constant_time_ge_8_s
Unexecuted instantiation: rsa_enc.c:constant_time_ge_8_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_ge_8_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_ge_8_s
s3_cbc.c:constant_time_ge_8_s
Line
Count
Source
182
166k
{
183
166k
    return (unsigned char)constant_time_ge_s(a, b);
184
166k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_ge_8_s
tls_pad.c:constant_time_ge_8_s
Line
Count
Source
182
9.37M
{
183
9.37M
    return (unsigned char)constant_time_ge_s(a, b);
184
9.37M
}
Unexecuted instantiation: bn_exp.c:constant_time_ge_8_s
Unexecuted instantiation: rsaz_exp.c:constant_time_ge_8_s
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_ge_8_s
Unexecuted instantiation: set_key.c:constant_time_ge_8_s
Unexecuted instantiation: curve448.c:constant_time_ge_8_s
Unexecuted instantiation: curve448_tables.c:constant_time_ge_8_s
Unexecuted instantiation: eddsa.c:constant_time_ge_8_s
Unexecuted instantiation: f_generic.c:constant_time_ge_8_s
Unexecuted instantiation: scalar.c:constant_time_ge_8_s
Unexecuted instantiation: rsa_oaep.c:constant_time_ge_8_s
Unexecuted instantiation: f_impl64.c:constant_time_ge_8_s
Unexecuted instantiation: statem_srvr.c:constant_time_ge_8_s
Unexecuted instantiation: crmf_lib.c:constant_time_ge_8_s
185
186
static ossl_inline unsigned int constant_time_is_zero(unsigned int a)
187
270M
{
188
270M
    return constant_time_msb(~a & (a - 1));
189
270M
}
err.c:constant_time_is_zero
Line
Count
Source
187
11.3k
{
188
11.3k
    return constant_time_msb(~a & (a - 1));
189
11.3k
}
bn_lib.c:constant_time_is_zero
Line
Count
Source
187
68.5M
{
188
68.5M
    return constant_time_msb(~a & (a - 1));
189
68.5M
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_is_zero
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_is_zero
Unexecuted instantiation: rsa_ossl.c:constant_time_is_zero
rsa_pk1.c:constant_time_is_zero
Line
Count
Source
187
2.38M
{
188
2.38M
    return constant_time_msb(~a & (a - 1));
189
2.38M
}
Unexecuted instantiation: rsa_pmeth.c:constant_time_is_zero
Unexecuted instantiation: rsa_enc.c:constant_time_is_zero
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_is_zero
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_is_zero
Unexecuted instantiation: s3_cbc.c:constant_time_is_zero
Unexecuted instantiation: ciphercommon_block.c:constant_time_is_zero
tls_pad.c:constant_time_is_zero
Line
Count
Source
187
3.94M
{
188
3.94M
    return constant_time_msb(~a & (a - 1));
189
3.94M
}
bn_exp.c:constant_time_is_zero
Line
Count
Source
187
195M
{
188
195M
    return constant_time_msb(~a & (a - 1));
189
195M
}
Unexecuted instantiation: rsaz_exp.c:constant_time_is_zero
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_is_zero
Unexecuted instantiation: set_key.c:constant_time_is_zero
Unexecuted instantiation: curve448.c:constant_time_is_zero
Unexecuted instantiation: curve448_tables.c:constant_time_is_zero
Unexecuted instantiation: eddsa.c:constant_time_is_zero
Unexecuted instantiation: f_generic.c:constant_time_is_zero
Unexecuted instantiation: scalar.c:constant_time_is_zero
Unexecuted instantiation: rsa_oaep.c:constant_time_is_zero
Unexecuted instantiation: f_impl64.c:constant_time_is_zero
Unexecuted instantiation: statem_srvr.c:constant_time_is_zero
Unexecuted instantiation: crmf_lib.c:constant_time_is_zero
190
191
static ossl_inline size_t constant_time_is_zero_s(size_t a)
192
10.4M
{
193
10.4M
    return constant_time_msb_s(~a & (a - 1));
194
10.4M
}
Unexecuted instantiation: err.c:constant_time_is_zero_s
Unexecuted instantiation: bn_lib.c:constant_time_is_zero_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_is_zero_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_is_zero_s
Unexecuted instantiation: rsa_ossl.c:constant_time_is_zero_s
Unexecuted instantiation: rsa_pk1.c:constant_time_is_zero_s
Unexecuted instantiation: rsa_pmeth.c:constant_time_is_zero_s
Unexecuted instantiation: rsa_enc.c:constant_time_is_zero_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_is_zero_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_is_zero_s
s3_cbc.c:constant_time_is_zero_s
Line
Count
Source
192
2.44k
{
193
2.44k
    return constant_time_msb_s(~a & (a - 1));
194
2.44k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_is_zero_s
tls_pad.c:constant_time_is_zero_s
Line
Count
Source
192
9.63M
{
193
9.63M
    return constant_time_msb_s(~a & (a - 1));
194
9.63M
}
Unexecuted instantiation: bn_exp.c:constant_time_is_zero_s
Unexecuted instantiation: rsaz_exp.c:constant_time_is_zero_s
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_is_zero_s
Unexecuted instantiation: set_key.c:constant_time_is_zero_s
curve448.c:constant_time_is_zero_s
Line
Count
Source
192
846k
{
193
846k
    return constant_time_msb_s(~a & (a - 1));
194
846k
}
Unexecuted instantiation: curve448_tables.c:constant_time_is_zero_s
Unexecuted instantiation: eddsa.c:constant_time_is_zero_s
Unexecuted instantiation: f_generic.c:constant_time_is_zero_s
Unexecuted instantiation: scalar.c:constant_time_is_zero_s
Unexecuted instantiation: rsa_oaep.c:constant_time_is_zero_s
Unexecuted instantiation: f_impl64.c:constant_time_is_zero_s
Unexecuted instantiation: statem_srvr.c:constant_time_is_zero_s
Unexecuted instantiation: crmf_lib.c:constant_time_is_zero_s
195
196
static ossl_inline unsigned char constant_time_is_zero_8(unsigned int a)
197
2.33M
{
198
2.33M
    return (unsigned char)constant_time_is_zero(a);
199
2.33M
}
Unexecuted instantiation: err.c:constant_time_is_zero_8
Unexecuted instantiation: bn_lib.c:constant_time_is_zero_8
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_is_zero_8
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_is_zero_8
Unexecuted instantiation: rsa_ossl.c:constant_time_is_zero_8
rsa_pk1.c:constant_time_is_zero_8
Line
Count
Source
197
2.33M
{
198
2.33M
    return (unsigned char)constant_time_is_zero(a);
199
2.33M
}
Unexecuted instantiation: rsa_pmeth.c:constant_time_is_zero_8
Unexecuted instantiation: rsa_enc.c:constant_time_is_zero_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_is_zero_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_is_zero_8
Unexecuted instantiation: s3_cbc.c:constant_time_is_zero_8
Unexecuted instantiation: ciphercommon_block.c:constant_time_is_zero_8
Unexecuted instantiation: tls_pad.c:constant_time_is_zero_8
Unexecuted instantiation: bn_exp.c:constant_time_is_zero_8
Unexecuted instantiation: rsaz_exp.c:constant_time_is_zero_8
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_is_zero_8
Unexecuted instantiation: set_key.c:constant_time_is_zero_8
Unexecuted instantiation: curve448.c:constant_time_is_zero_8
Unexecuted instantiation: curve448_tables.c:constant_time_is_zero_8
Unexecuted instantiation: eddsa.c:constant_time_is_zero_8
Unexecuted instantiation: f_generic.c:constant_time_is_zero_8
Unexecuted instantiation: scalar.c:constant_time_is_zero_8
Unexecuted instantiation: rsa_oaep.c:constant_time_is_zero_8
Unexecuted instantiation: f_impl64.c:constant_time_is_zero_8
Unexecuted instantiation: statem_srvr.c:constant_time_is_zero_8
Unexecuted instantiation: crmf_lib.c:constant_time_is_zero_8
200
201
static ossl_inline uint32_t constant_time_is_zero_32(uint32_t a)
202
0
{
203
0
    return constant_time_msb_32(~a & (a - 1));
204
0
}
Unexecuted instantiation: err.c:constant_time_is_zero_32
Unexecuted instantiation: bn_lib.c:constant_time_is_zero_32
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_is_zero_32
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_is_zero_32
Unexecuted instantiation: rsa_ossl.c:constant_time_is_zero_32
Unexecuted instantiation: rsa_pk1.c:constant_time_is_zero_32
Unexecuted instantiation: rsa_pmeth.c:constant_time_is_zero_32
Unexecuted instantiation: rsa_enc.c:constant_time_is_zero_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_is_zero_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_is_zero_32
Unexecuted instantiation: s3_cbc.c:constant_time_is_zero_32
Unexecuted instantiation: ciphercommon_block.c:constant_time_is_zero_32
Unexecuted instantiation: tls_pad.c:constant_time_is_zero_32
Unexecuted instantiation: bn_exp.c:constant_time_is_zero_32
Unexecuted instantiation: rsaz_exp.c:constant_time_is_zero_32
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_is_zero_32
Unexecuted instantiation: set_key.c:constant_time_is_zero_32
Unexecuted instantiation: curve448.c:constant_time_is_zero_32
Unexecuted instantiation: curve448_tables.c:constant_time_is_zero_32
Unexecuted instantiation: eddsa.c:constant_time_is_zero_32
Unexecuted instantiation: f_generic.c:constant_time_is_zero_32
Unexecuted instantiation: scalar.c:constant_time_is_zero_32
Unexecuted instantiation: rsa_oaep.c:constant_time_is_zero_32
Unexecuted instantiation: f_impl64.c:constant_time_is_zero_32
Unexecuted instantiation: statem_srvr.c:constant_time_is_zero_32
Unexecuted instantiation: crmf_lib.c:constant_time_is_zero_32
205
206
static ossl_inline uint64_t constant_time_is_zero_64(uint64_t a)
207
1.51k
{
208
1.51k
    return constant_time_msb_64(~a & (a - 1));
209
1.51k
}
Unexecuted instantiation: err.c:constant_time_is_zero_64
Unexecuted instantiation: bn_lib.c:constant_time_is_zero_64
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_is_zero_64
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_is_zero_64
Unexecuted instantiation: rsa_ossl.c:constant_time_is_zero_64
Unexecuted instantiation: rsa_pk1.c:constant_time_is_zero_64
Unexecuted instantiation: rsa_pmeth.c:constant_time_is_zero_64
Unexecuted instantiation: rsa_enc.c:constant_time_is_zero_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_is_zero_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_is_zero_64
Unexecuted instantiation: s3_cbc.c:constant_time_is_zero_64
Unexecuted instantiation: ciphercommon_block.c:constant_time_is_zero_64
Unexecuted instantiation: tls_pad.c:constant_time_is_zero_64
Unexecuted instantiation: bn_exp.c:constant_time_is_zero_64
Unexecuted instantiation: rsaz_exp.c:constant_time_is_zero_64
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_is_zero_64
Unexecuted instantiation: set_key.c:constant_time_is_zero_64
curve448.c:constant_time_is_zero_64
Line
Count
Source
207
156
{
208
156
    return constant_time_msb_64(~a & (a - 1));
209
156
}
Unexecuted instantiation: curve448_tables.c:constant_time_is_zero_64
Unexecuted instantiation: eddsa.c:constant_time_is_zero_64
f_generic.c:constant_time_is_zero_64
Line
Count
Source
207
1.22k
{
208
1.22k
    return constant_time_msb_64(~a & (a - 1));
209
1.22k
}
scalar.c:constant_time_is_zero_64
Line
Count
Source
207
132
{
208
132
    return constant_time_msb_64(~a & (a - 1));
209
132
}
Unexecuted instantiation: rsa_oaep.c:constant_time_is_zero_64
Unexecuted instantiation: f_impl64.c:constant_time_is_zero_64
Unexecuted instantiation: statem_srvr.c:constant_time_is_zero_64
Unexecuted instantiation: crmf_lib.c:constant_time_is_zero_64
210
211
static ossl_inline unsigned int constant_time_eq(unsigned int a,
212
    unsigned int b)
213
267M
{
214
267M
    return constant_time_is_zero(a ^ b);
215
267M
}
err.c:constant_time_eq
Line
Count
Source
213
11.3k
{
214
11.3k
    return constant_time_is_zero(a ^ b);
215
11.3k
}
bn_lib.c:constant_time_eq
Line
Count
Source
213
68.5M
{
214
68.5M
    return constant_time_is_zero(a ^ b);
215
68.5M
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_eq
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_eq
Unexecuted instantiation: rsa_ossl.c:constant_time_eq
rsa_pk1.c:constant_time_eq
Line
Count
Source
213
34.0k
{
214
34.0k
    return constant_time_is_zero(a ^ b);
215
34.0k
}
Unexecuted instantiation: rsa_pmeth.c:constant_time_eq
Unexecuted instantiation: rsa_enc.c:constant_time_eq
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_eq
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_eq
Unexecuted instantiation: s3_cbc.c:constant_time_eq
Unexecuted instantiation: ciphercommon_block.c:constant_time_eq
tls_pad.c:constant_time_eq
Line
Count
Source
213
3.94M
{
214
3.94M
    return constant_time_is_zero(a ^ b);
215
3.94M
}
bn_exp.c:constant_time_eq
Line
Count
Source
213
195M
{
214
195M
    return constant_time_is_zero(a ^ b);
215
195M
}
Unexecuted instantiation: rsaz_exp.c:constant_time_eq
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_eq
Unexecuted instantiation: set_key.c:constant_time_eq
Unexecuted instantiation: curve448.c:constant_time_eq
Unexecuted instantiation: curve448_tables.c:constant_time_eq
Unexecuted instantiation: eddsa.c:constant_time_eq
Unexecuted instantiation: f_generic.c:constant_time_eq
Unexecuted instantiation: scalar.c:constant_time_eq
Unexecuted instantiation: rsa_oaep.c:constant_time_eq
Unexecuted instantiation: f_impl64.c:constant_time_eq
Unexecuted instantiation: statem_srvr.c:constant_time_eq
Unexecuted instantiation: crmf_lib.c:constant_time_eq
216
217
static ossl_inline size_t constant_time_eq_s(size_t a, size_t b)
218
9.63M
{
219
9.63M
    return constant_time_is_zero_s(a ^ b);
220
9.63M
}
Unexecuted instantiation: err.c:constant_time_eq_s
Unexecuted instantiation: bn_lib.c:constant_time_eq_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_eq_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_eq_s
Unexecuted instantiation: rsa_ossl.c:constant_time_eq_s
Unexecuted instantiation: rsa_pk1.c:constant_time_eq_s
Unexecuted instantiation: rsa_pmeth.c:constant_time_eq_s
Unexecuted instantiation: rsa_enc.c:constant_time_eq_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_eq_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_eq_s
s3_cbc.c:constant_time_eq_s
Line
Count
Source
218
2.44k
{
219
2.44k
    return constant_time_is_zero_s(a ^ b);
220
2.44k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_eq_s
tls_pad.c:constant_time_eq_s
Line
Count
Source
218
9.63M
{
219
9.63M
    return constant_time_is_zero_s(a ^ b);
220
9.63M
}
Unexecuted instantiation: bn_exp.c:constant_time_eq_s
Unexecuted instantiation: rsaz_exp.c:constant_time_eq_s
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_eq_s
Unexecuted instantiation: set_key.c:constant_time_eq_s
Unexecuted instantiation: curve448.c:constant_time_eq_s
Unexecuted instantiation: curve448_tables.c:constant_time_eq_s
Unexecuted instantiation: eddsa.c:constant_time_eq_s
Unexecuted instantiation: f_generic.c:constant_time_eq_s
Unexecuted instantiation: scalar.c:constant_time_eq_s
Unexecuted instantiation: rsa_oaep.c:constant_time_eq_s
Unexecuted instantiation: f_impl64.c:constant_time_eq_s
Unexecuted instantiation: statem_srvr.c:constant_time_eq_s
Unexecuted instantiation: crmf_lib.c:constant_time_eq_s
221
222
static ossl_inline unsigned char constant_time_eq_8(unsigned int a,
223
    unsigned int b)
224
3.94M
{
225
3.94M
    return (unsigned char)constant_time_eq(a, b);
226
3.94M
}
Unexecuted instantiation: err.c:constant_time_eq_8
Unexecuted instantiation: bn_lib.c:constant_time_eq_8
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_eq_8
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_eq_8
Unexecuted instantiation: rsa_ossl.c:constant_time_eq_8
Unexecuted instantiation: rsa_pk1.c:constant_time_eq_8
Unexecuted instantiation: rsa_pmeth.c:constant_time_eq_8
Unexecuted instantiation: rsa_enc.c:constant_time_eq_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_eq_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_eq_8
Unexecuted instantiation: s3_cbc.c:constant_time_eq_8
Unexecuted instantiation: ciphercommon_block.c:constant_time_eq_8
tls_pad.c:constant_time_eq_8
Line
Count
Source
224
3.94M
{
225
3.94M
    return (unsigned char)constant_time_eq(a, b);
226
3.94M
}
Unexecuted instantiation: bn_exp.c:constant_time_eq_8
Unexecuted instantiation: rsaz_exp.c:constant_time_eq_8
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_eq_8
Unexecuted instantiation: set_key.c:constant_time_eq_8
Unexecuted instantiation: curve448.c:constant_time_eq_8
Unexecuted instantiation: curve448_tables.c:constant_time_eq_8
Unexecuted instantiation: eddsa.c:constant_time_eq_8
Unexecuted instantiation: f_generic.c:constant_time_eq_8
Unexecuted instantiation: scalar.c:constant_time_eq_8
Unexecuted instantiation: rsa_oaep.c:constant_time_eq_8
Unexecuted instantiation: f_impl64.c:constant_time_eq_8
Unexecuted instantiation: statem_srvr.c:constant_time_eq_8
Unexecuted instantiation: crmf_lib.c:constant_time_eq_8
227
228
static ossl_inline unsigned char constant_time_eq_8_s(size_t a, size_t b)
229
2.44k
{
230
2.44k
    return (unsigned char)constant_time_eq_s(a, b);
231
2.44k
}
Unexecuted instantiation: err.c:constant_time_eq_8_s
Unexecuted instantiation: bn_lib.c:constant_time_eq_8_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_eq_8_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_eq_8_s
Unexecuted instantiation: rsa_ossl.c:constant_time_eq_8_s
Unexecuted instantiation: rsa_pk1.c:constant_time_eq_8_s
Unexecuted instantiation: rsa_pmeth.c:constant_time_eq_8_s
Unexecuted instantiation: rsa_enc.c:constant_time_eq_8_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_eq_8_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_eq_8_s
s3_cbc.c:constant_time_eq_8_s
Line
Count
Source
229
2.44k
{
230
2.44k
    return (unsigned char)constant_time_eq_s(a, b);
231
2.44k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_eq_8_s
Unexecuted instantiation: tls_pad.c:constant_time_eq_8_s
Unexecuted instantiation: bn_exp.c:constant_time_eq_8_s
Unexecuted instantiation: rsaz_exp.c:constant_time_eq_8_s
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_eq_8_s
Unexecuted instantiation: set_key.c:constant_time_eq_8_s
Unexecuted instantiation: curve448.c:constant_time_eq_8_s
Unexecuted instantiation: curve448_tables.c:constant_time_eq_8_s
Unexecuted instantiation: eddsa.c:constant_time_eq_8_s
Unexecuted instantiation: f_generic.c:constant_time_eq_8_s
Unexecuted instantiation: scalar.c:constant_time_eq_8_s
Unexecuted instantiation: rsa_oaep.c:constant_time_eq_8_s
Unexecuted instantiation: f_impl64.c:constant_time_eq_8_s
Unexecuted instantiation: statem_srvr.c:constant_time_eq_8_s
Unexecuted instantiation: crmf_lib.c:constant_time_eq_8_s
232
233
static ossl_inline unsigned int constant_time_eq_int(int a, int b)
234
263M
{
235
263M
    return constant_time_eq((unsigned)(a), (unsigned)(b));
236
263M
}
err.c:constant_time_eq_int
Line
Count
Source
234
11.3k
{
235
11.3k
    return constant_time_eq((unsigned)(a), (unsigned)(b));
236
11.3k
}
bn_lib.c:constant_time_eq_int
Line
Count
Source
234
68.5M
{
235
68.5M
    return constant_time_eq((unsigned)(a), (unsigned)(b));
236
68.5M
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_eq_int
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_eq_int
Unexecuted instantiation: rsa_ossl.c:constant_time_eq_int
Unexecuted instantiation: rsa_pk1.c:constant_time_eq_int
Unexecuted instantiation: rsa_pmeth.c:constant_time_eq_int
Unexecuted instantiation: rsa_enc.c:constant_time_eq_int
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_eq_int
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_eq_int
Unexecuted instantiation: s3_cbc.c:constant_time_eq_int
Unexecuted instantiation: ciphercommon_block.c:constant_time_eq_int
Unexecuted instantiation: tls_pad.c:constant_time_eq_int
bn_exp.c:constant_time_eq_int
Line
Count
Source
234
195M
{
235
195M
    return constant_time_eq((unsigned)(a), (unsigned)(b));
236
195M
}
Unexecuted instantiation: rsaz_exp.c:constant_time_eq_int
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_eq_int
Unexecuted instantiation: set_key.c:constant_time_eq_int
Unexecuted instantiation: curve448.c:constant_time_eq_int
Unexecuted instantiation: curve448_tables.c:constant_time_eq_int
Unexecuted instantiation: eddsa.c:constant_time_eq_int
Unexecuted instantiation: f_generic.c:constant_time_eq_int
Unexecuted instantiation: scalar.c:constant_time_eq_int
Unexecuted instantiation: rsa_oaep.c:constant_time_eq_int
Unexecuted instantiation: f_impl64.c:constant_time_eq_int
Unexecuted instantiation: statem_srvr.c:constant_time_eq_int
Unexecuted instantiation: crmf_lib.c:constant_time_eq_int
237
238
static ossl_inline unsigned char constant_time_eq_int_8(int a, int b)
239
0
{
240
0
    return constant_time_eq_8((unsigned)(a), (unsigned)(b));
241
0
}
Unexecuted instantiation: err.c:constant_time_eq_int_8
Unexecuted instantiation: bn_lib.c:constant_time_eq_int_8
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_eq_int_8
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_eq_int_8
Unexecuted instantiation: rsa_ossl.c:constant_time_eq_int_8
Unexecuted instantiation: rsa_pk1.c:constant_time_eq_int_8
Unexecuted instantiation: rsa_pmeth.c:constant_time_eq_int_8
Unexecuted instantiation: rsa_enc.c:constant_time_eq_int_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_eq_int_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_eq_int_8
Unexecuted instantiation: s3_cbc.c:constant_time_eq_int_8
Unexecuted instantiation: ciphercommon_block.c:constant_time_eq_int_8
Unexecuted instantiation: tls_pad.c:constant_time_eq_int_8
Unexecuted instantiation: bn_exp.c:constant_time_eq_int_8
Unexecuted instantiation: rsaz_exp.c:constant_time_eq_int_8
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_eq_int_8
Unexecuted instantiation: set_key.c:constant_time_eq_int_8
Unexecuted instantiation: curve448.c:constant_time_eq_int_8
Unexecuted instantiation: curve448_tables.c:constant_time_eq_int_8
Unexecuted instantiation: eddsa.c:constant_time_eq_int_8
Unexecuted instantiation: f_generic.c:constant_time_eq_int_8
Unexecuted instantiation: scalar.c:constant_time_eq_int_8
Unexecuted instantiation: rsa_oaep.c:constant_time_eq_int_8
Unexecuted instantiation: f_impl64.c:constant_time_eq_int_8
Unexecuted instantiation: statem_srvr.c:constant_time_eq_int_8
Unexecuted instantiation: crmf_lib.c:constant_time_eq_int_8
242
243
/*
244
 * Returns the value unmodified, but avoids optimizations.
245
 * The barriers prevent the compiler from narrowing down the
246
 * possible value range of the mask and ~mask in the select
247
 * statements, which avoids the recognition of the select
248
 * and turning it into a conditional load or branch.
249
 */
250
static ossl_inline unsigned int value_barrier(unsigned int a)
251
381M
{
252
381M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
381M
    unsigned int r;
254
381M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
381M
    return r;
259
381M
}
err.c:value_barrier
Line
Count
Source
251
22.7k
{
252
22.7k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
22.7k
    unsigned int r;
254
22.7k
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
22.7k
    return r;
259
22.7k
}
bn_lib.c:value_barrier
Line
Count
Source
251
39.7M
{
252
39.7M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
39.7M
    unsigned int r;
254
39.7M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
39.7M
    return r;
259
39.7M
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:value_barrier
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:value_barrier
Unexecuted instantiation: rsa_ossl.c:value_barrier
rsa_pk1.c:value_barrier
Line
Count
Source
251
1.08M
{
252
1.08M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
1.08M
    unsigned int r;
254
1.08M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
1.08M
    return r;
259
1.08M
}
Unexecuted instantiation: rsa_pmeth.c:value_barrier
rsa_enc.c:value_barrier
Line
Count
Source
251
22.6k
{
252
22.6k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
22.6k
    unsigned int r;
254
22.6k
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
22.6k
    return r;
259
22.6k
}
cipher_aes_cbc_hmac_sha1_hw.c:value_barrier
Line
Count
Source
251
444
{
252
444
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
444
    unsigned int r;
254
444
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
444
    return r;
259
444
}
cipher_aes_cbc_hmac_sha256_hw.c:value_barrier
Line
Count
Source
251
476
{
252
476
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
476
    unsigned int r;
254
476
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
476
    return r;
259
476
}
s3_cbc.c:value_barrier
Line
Count
Source
251
186k
{
252
186k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
186k
    unsigned int r;
254
186k
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
186k
    return r;
259
186k
}
Unexecuted instantiation: ciphercommon_block.c:value_barrier
tls_pad.c:value_barrier
Line
Count
Source
251
15.7M
{
252
15.7M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
15.7M
    unsigned int r;
254
15.7M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
15.7M
    return r;
259
15.7M
}
Unexecuted instantiation: bn_exp.c:value_barrier
Unexecuted instantiation: rsaz_exp.c:value_barrier
Unexecuted instantiation: rsaz_exp_x2.c:value_barrier
Unexecuted instantiation: set_key.c:value_barrier
curve448.c:value_barrier
Line
Count
Source
251
325M
{
252
325M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
325M
    unsigned int r;
254
325M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
325M
    return r;
259
325M
}
Unexecuted instantiation: curve448_tables.c:value_barrier
Unexecuted instantiation: eddsa.c:value_barrier
Unexecuted instantiation: f_generic.c:value_barrier
Unexecuted instantiation: scalar.c:value_barrier
Unexecuted instantiation: rsa_oaep.c:value_barrier
Unexecuted instantiation: f_impl64.c:value_barrier
Unexecuted instantiation: statem_srvr.c:value_barrier
Unexecuted instantiation: crmf_lib.c:value_barrier
260
261
/* Convenience method for uint32_t. */
262
static ossl_inline uint32_t value_barrier_32(uint32_t a)
263
0
{
264
0
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
265
0
    uint32_t r;
266
0
    __asm__("" : "=r"(r) : "0"(a));
267
0
#else
268
0
    volatile uint32_t r = a;
269
0
#endif
270
0
    return r;
271
0
}
Unexecuted instantiation: err.c:value_barrier_32
Unexecuted instantiation: bn_lib.c:value_barrier_32
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:value_barrier_32
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:value_barrier_32
Unexecuted instantiation: rsa_ossl.c:value_barrier_32
Unexecuted instantiation: rsa_pk1.c:value_barrier_32
Unexecuted instantiation: rsa_pmeth.c:value_barrier_32
Unexecuted instantiation: rsa_enc.c:value_barrier_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:value_barrier_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:value_barrier_32
Unexecuted instantiation: s3_cbc.c:value_barrier_32
Unexecuted instantiation: ciphercommon_block.c:value_barrier_32
Unexecuted instantiation: tls_pad.c:value_barrier_32
Unexecuted instantiation: bn_exp.c:value_barrier_32
Unexecuted instantiation: rsaz_exp.c:value_barrier_32
Unexecuted instantiation: rsaz_exp_x2.c:value_barrier_32
Unexecuted instantiation: set_key.c:value_barrier_32
Unexecuted instantiation: curve448.c:value_barrier_32
Unexecuted instantiation: curve448_tables.c:value_barrier_32
Unexecuted instantiation: eddsa.c:value_barrier_32
Unexecuted instantiation: f_generic.c:value_barrier_32
Unexecuted instantiation: scalar.c:value_barrier_32
Unexecuted instantiation: rsa_oaep.c:value_barrier_32
Unexecuted instantiation: f_impl64.c:value_barrier_32
Unexecuted instantiation: statem_srvr.c:value_barrier_32
Unexecuted instantiation: crmf_lib.c:value_barrier_32
272
273
/* Convenience method for uint64_t. */
274
static ossl_inline uint64_t value_barrier_64(uint64_t a)
275
1.52M
{
276
1.52M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
277
1.52M
    uint64_t r;
278
1.52M
    __asm__("" : "=r"(r) : "0"(a));
279
#else
280
    volatile uint64_t r = a;
281
#endif
282
1.52M
    return r;
283
1.52M
}
Unexecuted instantiation: err.c:value_barrier_64
Unexecuted instantiation: bn_lib.c:value_barrier_64
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:value_barrier_64
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:value_barrier_64
Unexecuted instantiation: rsa_ossl.c:value_barrier_64
Unexecuted instantiation: rsa_pk1.c:value_barrier_64
Unexecuted instantiation: rsa_pmeth.c:value_barrier_64
Unexecuted instantiation: rsa_enc.c:value_barrier_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:value_barrier_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:value_barrier_64
Unexecuted instantiation: s3_cbc.c:value_barrier_64
Unexecuted instantiation: ciphercommon_block.c:value_barrier_64
Unexecuted instantiation: tls_pad.c:value_barrier_64
Unexecuted instantiation: bn_exp.c:value_barrier_64
rsaz_exp.c:value_barrier_64
Line
Count
Source
275
12.5k
{
276
12.5k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
277
12.5k
    uint64_t r;
278
12.5k
    __asm__("" : "=r"(r) : "0"(a));
279
#else
280
    volatile uint64_t r = a;
281
#endif
282
12.5k
    return r;
283
12.5k
}
Unexecuted instantiation: rsaz_exp_x2.c:value_barrier_64
Unexecuted instantiation: set_key.c:value_barrier_64
curve448.c:value_barrier_64
Line
Count
Source
275
1.50M
{
276
1.50M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
277
1.50M
    uint64_t r;
278
1.50M
    __asm__("" : "=r"(r) : "0"(a));
279
#else
280
    volatile uint64_t r = a;
281
#endif
282
1.50M
    return r;
283
1.50M
}
Unexecuted instantiation: curve448_tables.c:value_barrier_64
Unexecuted instantiation: eddsa.c:value_barrier_64
Unexecuted instantiation: f_generic.c:value_barrier_64
Unexecuted instantiation: scalar.c:value_barrier_64
Unexecuted instantiation: rsa_oaep.c:value_barrier_64
Unexecuted instantiation: f_impl64.c:value_barrier_64
Unexecuted instantiation: statem_srvr.c:value_barrier_64
Unexecuted instantiation: crmf_lib.c:value_barrier_64
284
285
/* Convenience method for size_t. */
286
static ossl_inline size_t value_barrier_s(size_t a)
287
22.6k
{
288
22.6k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
289
22.6k
    size_t r;
290
22.6k
    __asm__("" : "=r"(r) : "0"(a));
291
#else
292
    volatile size_t r = a;
293
#endif
294
22.6k
    return r;
295
22.6k
}
Unexecuted instantiation: err.c:value_barrier_s
Unexecuted instantiation: bn_lib.c:value_barrier_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:value_barrier_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:value_barrier_s
Unexecuted instantiation: rsa_ossl.c:value_barrier_s
Unexecuted instantiation: rsa_pk1.c:value_barrier_s
Unexecuted instantiation: rsa_pmeth.c:value_barrier_s
rsa_enc.c:value_barrier_s
Line
Count
Source
287
22.6k
{
288
22.6k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
289
22.6k
    size_t r;
290
22.6k
    __asm__("" : "=r"(r) : "0"(a));
291
#else
292
    volatile size_t r = a;
293
#endif
294
22.6k
    return r;
295
22.6k
}
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:value_barrier_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:value_barrier_s
Unexecuted instantiation: s3_cbc.c:value_barrier_s
Unexecuted instantiation: ciphercommon_block.c:value_barrier_s
Unexecuted instantiation: tls_pad.c:value_barrier_s
Unexecuted instantiation: bn_exp.c:value_barrier_s
Unexecuted instantiation: rsaz_exp.c:value_barrier_s
Unexecuted instantiation: rsaz_exp_x2.c:value_barrier_s
Unexecuted instantiation: set_key.c:value_barrier_s
Unexecuted instantiation: curve448.c:value_barrier_s
Unexecuted instantiation: curve448_tables.c:value_barrier_s
Unexecuted instantiation: eddsa.c:value_barrier_s
Unexecuted instantiation: f_generic.c:value_barrier_s
Unexecuted instantiation: scalar.c:value_barrier_s
Unexecuted instantiation: rsa_oaep.c:value_barrier_s
Unexecuted instantiation: f_impl64.c:value_barrier_s
Unexecuted instantiation: statem_srvr.c:value_barrier_s
Unexecuted instantiation: crmf_lib.c:value_barrier_s
296
297
/* Convenience method for unsigned char. */
298
static ossl_inline unsigned char value_barrier_8(unsigned char a)
299
0
{
300
0
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
301
0
    unsigned char r;
302
0
    __asm__("" : "=r"(r) : "0"(a));
303
0
#else
304
0
    volatile unsigned char r = a;
305
0
#endif
306
0
    return r;
307
0
}
Unexecuted instantiation: err.c:value_barrier_8
Unexecuted instantiation: bn_lib.c:value_barrier_8
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:value_barrier_8
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:value_barrier_8
Unexecuted instantiation: rsa_ossl.c:value_barrier_8
Unexecuted instantiation: rsa_pk1.c:value_barrier_8
Unexecuted instantiation: rsa_pmeth.c:value_barrier_8
Unexecuted instantiation: rsa_enc.c:value_barrier_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:value_barrier_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:value_barrier_8
Unexecuted instantiation: s3_cbc.c:value_barrier_8
Unexecuted instantiation: ciphercommon_block.c:value_barrier_8
Unexecuted instantiation: tls_pad.c:value_barrier_8
Unexecuted instantiation: bn_exp.c:value_barrier_8
Unexecuted instantiation: rsaz_exp.c:value_barrier_8
Unexecuted instantiation: rsaz_exp_x2.c:value_barrier_8
Unexecuted instantiation: set_key.c:value_barrier_8
Unexecuted instantiation: curve448.c:value_barrier_8
Unexecuted instantiation: curve448_tables.c:value_barrier_8
Unexecuted instantiation: eddsa.c:value_barrier_8
Unexecuted instantiation: f_generic.c:value_barrier_8
Unexecuted instantiation: scalar.c:value_barrier_8
Unexecuted instantiation: rsa_oaep.c:value_barrier_8
Unexecuted instantiation: f_impl64.c:value_barrier_8
Unexecuted instantiation: statem_srvr.c:value_barrier_8
Unexecuted instantiation: crmf_lib.c:value_barrier_8
308
309
static ossl_inline unsigned int constant_time_select(unsigned int mask,
310
    unsigned int a,
311
    unsigned int b)
312
190M
{
313
190M
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
190M
}
err.c:constant_time_select
Line
Count
Source
312
11.3k
{
313
11.3k
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
11.3k
}
bn_lib.c:constant_time_select
Line
Count
Source
312
19.8M
{
313
19.8M
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
19.8M
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_select
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_select
Unexecuted instantiation: rsa_ossl.c:constant_time_select
rsa_pk1.c:constant_time_select
Line
Count
Source
312
544k
{
313
544k
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
544k
}
Unexecuted instantiation: rsa_pmeth.c:constant_time_select
rsa_enc.c:constant_time_select
Line
Count
Source
312
11.3k
{
313
11.3k
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
11.3k
}
cipher_aes_cbc_hmac_sha1_hw.c:constant_time_select
Line
Count
Source
312
222
{
313
222
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
222
}
cipher_aes_cbc_hmac_sha256_hw.c:constant_time_select
Line
Count
Source
312
238
{
313
238
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
238
}
s3_cbc.c:constant_time_select
Line
Count
Source
312
93.4k
{
313
93.4k
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
93.4k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_select
tls_pad.c:constant_time_select
Line
Count
Source
312
7.89M
{
313
7.89M
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
7.89M
}
Unexecuted instantiation: bn_exp.c:constant_time_select
Unexecuted instantiation: rsaz_exp.c:constant_time_select
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_select
Unexecuted instantiation: set_key.c:constant_time_select
curve448.c:constant_time_select
Line
Count
Source
312
162M
{
313
162M
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
162M
}
Unexecuted instantiation: curve448_tables.c:constant_time_select
Unexecuted instantiation: eddsa.c:constant_time_select
Unexecuted instantiation: f_generic.c:constant_time_select
Unexecuted instantiation: scalar.c:constant_time_select
Unexecuted instantiation: rsa_oaep.c:constant_time_select
Unexecuted instantiation: f_impl64.c:constant_time_select
Unexecuted instantiation: statem_srvr.c:constant_time_select
Unexecuted instantiation: crmf_lib.c:constant_time_select
315
316
static ossl_inline size_t constant_time_select_s(size_t mask,
317
    size_t a,
318
    size_t b)
319
11.3k
{
320
11.3k
    return (value_barrier_s(mask) & a) | (value_barrier_s(~mask) & b);
321
11.3k
}
Unexecuted instantiation: err.c:constant_time_select_s
Unexecuted instantiation: bn_lib.c:constant_time_select_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_select_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_select_s
Unexecuted instantiation: rsa_ossl.c:constant_time_select_s
Unexecuted instantiation: rsa_pk1.c:constant_time_select_s
Unexecuted instantiation: rsa_pmeth.c:constant_time_select_s
rsa_enc.c:constant_time_select_s
Line
Count
Source
319
11.3k
{
320
11.3k
    return (value_barrier_s(mask) & a) | (value_barrier_s(~mask) & b);
321
11.3k
}
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_select_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_select_s
Unexecuted instantiation: s3_cbc.c:constant_time_select_s
Unexecuted instantiation: ciphercommon_block.c:constant_time_select_s
Unexecuted instantiation: tls_pad.c:constant_time_select_s
Unexecuted instantiation: bn_exp.c:constant_time_select_s
Unexecuted instantiation: rsaz_exp.c:constant_time_select_s
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_select_s
Unexecuted instantiation: set_key.c:constant_time_select_s
Unexecuted instantiation: curve448.c:constant_time_select_s
Unexecuted instantiation: curve448_tables.c:constant_time_select_s
Unexecuted instantiation: eddsa.c:constant_time_select_s
Unexecuted instantiation: f_generic.c:constant_time_select_s
Unexecuted instantiation: scalar.c:constant_time_select_s
Unexecuted instantiation: rsa_oaep.c:constant_time_select_s
Unexecuted instantiation: f_impl64.c:constant_time_select_s
Unexecuted instantiation: statem_srvr.c:constant_time_select_s
Unexecuted instantiation: crmf_lib.c:constant_time_select_s
322
323
static ossl_inline unsigned char constant_time_select_8(unsigned char mask,
324
    unsigned char a,
325
    unsigned char b)
326
171M
{
327
171M
    return (unsigned char)constant_time_select(mask, a, b);
328
171M
}
Unexecuted instantiation: err.c:constant_time_select_8
Unexecuted instantiation: bn_lib.c:constant_time_select_8
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_select_8
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_select_8
Unexecuted instantiation: rsa_ossl.c:constant_time_select_8
rsa_pk1.c:constant_time_select_8
Line
Count
Source
326
544k
{
327
544k
    return (unsigned char)constant_time_select(mask, a, b);
328
544k
}
Unexecuted instantiation: rsa_pmeth.c:constant_time_select_8
Unexecuted instantiation: rsa_enc.c:constant_time_select_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_select_8
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_select_8
s3_cbc.c:constant_time_select_8
Line
Count
Source
326
93.4k
{
327
93.4k
    return (unsigned char)constant_time_select(mask, a, b);
328
93.4k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_select_8
tls_pad.c:constant_time_select_8
Line
Count
Source
326
7.89M
{
327
7.89M
    return (unsigned char)constant_time_select(mask, a, b);
328
7.89M
}
Unexecuted instantiation: bn_exp.c:constant_time_select_8
Unexecuted instantiation: rsaz_exp.c:constant_time_select_8
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_select_8
Unexecuted instantiation: set_key.c:constant_time_select_8
curve448.c:constant_time_select_8
Line
Count
Source
326
162M
{
327
162M
    return (unsigned char)constant_time_select(mask, a, b);
328
162M
}
Unexecuted instantiation: curve448_tables.c:constant_time_select_8
Unexecuted instantiation: eddsa.c:constant_time_select_8
Unexecuted instantiation: f_generic.c:constant_time_select_8
Unexecuted instantiation: scalar.c:constant_time_select_8
Unexecuted instantiation: rsa_oaep.c:constant_time_select_8
Unexecuted instantiation: f_impl64.c:constant_time_select_8
Unexecuted instantiation: statem_srvr.c:constant_time_select_8
Unexecuted instantiation: crmf_lib.c:constant_time_select_8
329
330
static ossl_inline int constant_time_select_int(unsigned int mask, int a,
331
    int b)
332
19.8M
{
333
19.8M
    return (int)constant_time_select(mask, (unsigned)(a), (unsigned)(b));
334
19.8M
}
err.c:constant_time_select_int
Line
Count
Source
332
11.3k
{
333
11.3k
    return (int)constant_time_select(mask, (unsigned)(a), (unsigned)(b));
334
11.3k
}
bn_lib.c:constant_time_select_int
Line
Count
Source
332
19.8M
{
333
19.8M
    return (int)constant_time_select(mask, (unsigned)(a), (unsigned)(b));
334
19.8M
}
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_select_int
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_select_int
Unexecuted instantiation: rsa_ossl.c:constant_time_select_int
Unexecuted instantiation: rsa_pk1.c:constant_time_select_int
Unexecuted instantiation: rsa_pmeth.c:constant_time_select_int
rsa_enc.c:constant_time_select_int
Line
Count
Source
332
11.3k
{
333
11.3k
    return (int)constant_time_select(mask, (unsigned)(a), (unsigned)(b));
334
11.3k
}
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_select_int
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_select_int
Unexecuted instantiation: s3_cbc.c:constant_time_select_int
Unexecuted instantiation: ciphercommon_block.c:constant_time_select_int
Unexecuted instantiation: tls_pad.c:constant_time_select_int
Unexecuted instantiation: bn_exp.c:constant_time_select_int
Unexecuted instantiation: rsaz_exp.c:constant_time_select_int
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_select_int
Unexecuted instantiation: set_key.c:constant_time_select_int
Unexecuted instantiation: curve448.c:constant_time_select_int
Unexecuted instantiation: curve448_tables.c:constant_time_select_int
Unexecuted instantiation: eddsa.c:constant_time_select_int
Unexecuted instantiation: f_generic.c:constant_time_select_int
Unexecuted instantiation: scalar.c:constant_time_select_int
Unexecuted instantiation: rsa_oaep.c:constant_time_select_int
Unexecuted instantiation: f_impl64.c:constant_time_select_int
Unexecuted instantiation: statem_srvr.c:constant_time_select_int
Unexecuted instantiation: crmf_lib.c:constant_time_select_int
335
336
static ossl_inline int constant_time_select_int_s(size_t mask, int a, int b)
337
0
{
338
0
    return (int)constant_time_select((unsigned)mask, (unsigned)(a),
339
0
        (unsigned)(b));
340
0
}
Unexecuted instantiation: err.c:constant_time_select_int_s
Unexecuted instantiation: bn_lib.c:constant_time_select_int_s
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_select_int_s
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_select_int_s
Unexecuted instantiation: rsa_ossl.c:constant_time_select_int_s
Unexecuted instantiation: rsa_pk1.c:constant_time_select_int_s
Unexecuted instantiation: rsa_pmeth.c:constant_time_select_int_s
Unexecuted instantiation: rsa_enc.c:constant_time_select_int_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_select_int_s
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_select_int_s
Unexecuted instantiation: s3_cbc.c:constant_time_select_int_s
Unexecuted instantiation: ciphercommon_block.c:constant_time_select_int_s
Unexecuted instantiation: tls_pad.c:constant_time_select_int_s
Unexecuted instantiation: bn_exp.c:constant_time_select_int_s
Unexecuted instantiation: rsaz_exp.c:constant_time_select_int_s
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_select_int_s
Unexecuted instantiation: set_key.c:constant_time_select_int_s
Unexecuted instantiation: curve448.c:constant_time_select_int_s
Unexecuted instantiation: curve448_tables.c:constant_time_select_int_s
Unexecuted instantiation: eddsa.c:constant_time_select_int_s
Unexecuted instantiation: f_generic.c:constant_time_select_int_s
Unexecuted instantiation: scalar.c:constant_time_select_int_s
Unexecuted instantiation: rsa_oaep.c:constant_time_select_int_s
Unexecuted instantiation: f_impl64.c:constant_time_select_int_s
Unexecuted instantiation: statem_srvr.c:constant_time_select_int_s
Unexecuted instantiation: crmf_lib.c:constant_time_select_int_s
341
342
static ossl_inline uint32_t constant_time_select_32(uint32_t mask, uint32_t a,
343
    uint32_t b)
344
0
{
345
0
    return (value_barrier_32(mask) & a) | (value_barrier_32(~mask) & b);
346
0
}
Unexecuted instantiation: err.c:constant_time_select_32
Unexecuted instantiation: bn_lib.c:constant_time_select_32
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_select_32
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_select_32
Unexecuted instantiation: rsa_ossl.c:constant_time_select_32
Unexecuted instantiation: rsa_pk1.c:constant_time_select_32
Unexecuted instantiation: rsa_pmeth.c:constant_time_select_32
Unexecuted instantiation: rsa_enc.c:constant_time_select_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_select_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_select_32
Unexecuted instantiation: s3_cbc.c:constant_time_select_32
Unexecuted instantiation: ciphercommon_block.c:constant_time_select_32
Unexecuted instantiation: tls_pad.c:constant_time_select_32
Unexecuted instantiation: bn_exp.c:constant_time_select_32
Unexecuted instantiation: rsaz_exp.c:constant_time_select_32
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_select_32
Unexecuted instantiation: set_key.c:constant_time_select_32
Unexecuted instantiation: curve448.c:constant_time_select_32
Unexecuted instantiation: curve448_tables.c:constant_time_select_32
Unexecuted instantiation: eddsa.c:constant_time_select_32
Unexecuted instantiation: f_generic.c:constant_time_select_32
Unexecuted instantiation: scalar.c:constant_time_select_32
Unexecuted instantiation: rsa_oaep.c:constant_time_select_32
Unexecuted instantiation: f_impl64.c:constant_time_select_32
Unexecuted instantiation: statem_srvr.c:constant_time_select_32
Unexecuted instantiation: crmf_lib.c:constant_time_select_32
347
348
static ossl_inline uint64_t constant_time_select_64(uint64_t mask, uint64_t a,
349
    uint64_t b)
350
430k
{
351
430k
    return (value_barrier_64(mask) & a) | (value_barrier_64(~mask) & b);
352
430k
}
Unexecuted instantiation: err.c:constant_time_select_64
Unexecuted instantiation: bn_lib.c:constant_time_select_64
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_select_64
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_select_64
Unexecuted instantiation: rsa_ossl.c:constant_time_select_64
Unexecuted instantiation: rsa_pk1.c:constant_time_select_64
Unexecuted instantiation: rsa_pmeth.c:constant_time_select_64
Unexecuted instantiation: rsa_enc.c:constant_time_select_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_select_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_select_64
Unexecuted instantiation: s3_cbc.c:constant_time_select_64
Unexecuted instantiation: ciphercommon_block.c:constant_time_select_64
Unexecuted instantiation: tls_pad.c:constant_time_select_64
Unexecuted instantiation: bn_exp.c:constant_time_select_64
rsaz_exp.c:constant_time_select_64
Line
Count
Source
350
6.28k
{
351
6.28k
    return (value_barrier_64(mask) & a) | (value_barrier_64(~mask) & b);
352
6.28k
}
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_select_64
Unexecuted instantiation: set_key.c:constant_time_select_64
curve448.c:constant_time_select_64
Line
Count
Source
350
423k
{
351
423k
    return (value_barrier_64(mask) & a) | (value_barrier_64(~mask) & b);
352
423k
}
Unexecuted instantiation: curve448_tables.c:constant_time_select_64
Unexecuted instantiation: eddsa.c:constant_time_select_64
Unexecuted instantiation: f_generic.c:constant_time_select_64
Unexecuted instantiation: scalar.c:constant_time_select_64
Unexecuted instantiation: rsa_oaep.c:constant_time_select_64
Unexecuted instantiation: f_impl64.c:constant_time_select_64
Unexecuted instantiation: statem_srvr.c:constant_time_select_64
Unexecuted instantiation: crmf_lib.c:constant_time_select_64
353
354
/*
355
 * mask must be 0xFFFFFFFF or 0x00000000.
356
 *
357
 * if (mask) {
358
 *     uint32_t tmp = *a;
359
 *
360
 *     *a = *b;
361
 *     *b = tmp;
362
 * }
363
 */
364
static ossl_inline void constant_time_cond_swap_32(uint32_t mask, uint32_t *a,
365
    uint32_t *b)
366
0
{
367
0
    uint32_t xor = *a ^ *b;
368
0
369
0
    xor&= value_barrier_32(mask);
370
0
    *a ^= xor;
371
0
    *b ^= xor;
372
0
}
Unexecuted instantiation: err.c:constant_time_cond_swap_32
Unexecuted instantiation: bn_lib.c:constant_time_cond_swap_32
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_cond_swap_32
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_cond_swap_32
Unexecuted instantiation: rsa_ossl.c:constant_time_cond_swap_32
Unexecuted instantiation: rsa_pk1.c:constant_time_cond_swap_32
Unexecuted instantiation: rsa_pmeth.c:constant_time_cond_swap_32
Unexecuted instantiation: rsa_enc.c:constant_time_cond_swap_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_cond_swap_32
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_cond_swap_32
Unexecuted instantiation: s3_cbc.c:constant_time_cond_swap_32
Unexecuted instantiation: ciphercommon_block.c:constant_time_cond_swap_32
Unexecuted instantiation: tls_pad.c:constant_time_cond_swap_32
Unexecuted instantiation: bn_exp.c:constant_time_cond_swap_32
Unexecuted instantiation: rsaz_exp.c:constant_time_cond_swap_32
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_cond_swap_32
Unexecuted instantiation: set_key.c:constant_time_cond_swap_32
Unexecuted instantiation: curve448.c:constant_time_cond_swap_32
Unexecuted instantiation: curve448_tables.c:constant_time_cond_swap_32
Unexecuted instantiation: eddsa.c:constant_time_cond_swap_32
Unexecuted instantiation: f_generic.c:constant_time_cond_swap_32
Unexecuted instantiation: scalar.c:constant_time_cond_swap_32
Unexecuted instantiation: rsa_oaep.c:constant_time_cond_swap_32
Unexecuted instantiation: f_impl64.c:constant_time_cond_swap_32
Unexecuted instantiation: statem_srvr.c:constant_time_cond_swap_32
Unexecuted instantiation: crmf_lib.c:constant_time_cond_swap_32
373
374
/*
375
 * mask must be 0xFFFFFFFF or 0x00000000.
376
 *
377
 * if (mask) {
378
 *     uint64_t tmp = *a;
379
 *
380
 *     *a = *b;
381
 *     *b = tmp;
382
 * }
383
 */
384
static ossl_inline void constant_time_cond_swap_64(uint64_t mask, uint64_t *a,
385
    uint64_t *b)
386
660k
{
387
660k
    uint64_t xor = *a ^ *b;
388
389
660k
    xor&= value_barrier_64(mask);
390
660k
    *a ^= xor;
391
660k
    *b ^= xor;
392
660k
}
Unexecuted instantiation: err.c:constant_time_cond_swap_64
Unexecuted instantiation: bn_lib.c:constant_time_cond_swap_64
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_cond_swap_64
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_cond_swap_64
Unexecuted instantiation: rsa_ossl.c:constant_time_cond_swap_64
Unexecuted instantiation: rsa_pk1.c:constant_time_cond_swap_64
Unexecuted instantiation: rsa_pmeth.c:constant_time_cond_swap_64
Unexecuted instantiation: rsa_enc.c:constant_time_cond_swap_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_cond_swap_64
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_cond_swap_64
Unexecuted instantiation: s3_cbc.c:constant_time_cond_swap_64
Unexecuted instantiation: ciphercommon_block.c:constant_time_cond_swap_64
Unexecuted instantiation: tls_pad.c:constant_time_cond_swap_64
Unexecuted instantiation: bn_exp.c:constant_time_cond_swap_64
Unexecuted instantiation: rsaz_exp.c:constant_time_cond_swap_64
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_cond_swap_64
Unexecuted instantiation: set_key.c:constant_time_cond_swap_64
curve448.c:constant_time_cond_swap_64
Line
Count
Source
386
660k
{
387
660k
    uint64_t xor = *a ^ *b;
388
389
660k
    xor&= value_barrier_64(mask);
390
660k
    *a ^= xor;
391
660k
    *b ^= xor;
392
660k
}
Unexecuted instantiation: curve448_tables.c:constant_time_cond_swap_64
Unexecuted instantiation: eddsa.c:constant_time_cond_swap_64
Unexecuted instantiation: f_generic.c:constant_time_cond_swap_64
Unexecuted instantiation: scalar.c:constant_time_cond_swap_64
Unexecuted instantiation: rsa_oaep.c:constant_time_cond_swap_64
Unexecuted instantiation: f_impl64.c:constant_time_cond_swap_64
Unexecuted instantiation: statem_srvr.c:constant_time_cond_swap_64
Unexecuted instantiation: crmf_lib.c:constant_time_cond_swap_64
393
394
/*
395
 * mask must be 0xFF or 0x00.
396
 * "constant time" is per len.
397
 *
398
 * if (mask) {
399
 *     unsigned char tmp[len];
400
 *
401
 *     memcpy(tmp, a, len);
402
 *     memcpy(a, b);
403
 *     memcpy(b, tmp);
404
 * }
405
 */
406
static ossl_inline void constant_time_cond_swap_buff(unsigned char mask,
407
    unsigned char *a,
408
    unsigned char *b,
409
    size_t len)
410
0
{
411
0
    size_t i;
412
0
    unsigned char tmp;
413
0
414
0
    for (i = 0; i < len; i++) {
415
0
        tmp = a[i] ^ b[i];
416
0
        tmp &= value_barrier_8(mask);
417
0
        a[i] ^= tmp;
418
0
        b[i] ^= tmp;
419
0
    }
420
0
}
Unexecuted instantiation: err.c:constant_time_cond_swap_buff
Unexecuted instantiation: bn_lib.c:constant_time_cond_swap_buff
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_cond_swap_buff
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_cond_swap_buff
Unexecuted instantiation: rsa_ossl.c:constant_time_cond_swap_buff
Unexecuted instantiation: rsa_pk1.c:constant_time_cond_swap_buff
Unexecuted instantiation: rsa_pmeth.c:constant_time_cond_swap_buff
Unexecuted instantiation: rsa_enc.c:constant_time_cond_swap_buff
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_cond_swap_buff
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_cond_swap_buff
Unexecuted instantiation: s3_cbc.c:constant_time_cond_swap_buff
Unexecuted instantiation: ciphercommon_block.c:constant_time_cond_swap_buff
Unexecuted instantiation: tls_pad.c:constant_time_cond_swap_buff
Unexecuted instantiation: bn_exp.c:constant_time_cond_swap_buff
Unexecuted instantiation: rsaz_exp.c:constant_time_cond_swap_buff
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_cond_swap_buff
Unexecuted instantiation: set_key.c:constant_time_cond_swap_buff
Unexecuted instantiation: curve448.c:constant_time_cond_swap_buff
Unexecuted instantiation: curve448_tables.c:constant_time_cond_swap_buff
Unexecuted instantiation: eddsa.c:constant_time_cond_swap_buff
Unexecuted instantiation: f_generic.c:constant_time_cond_swap_buff
Unexecuted instantiation: scalar.c:constant_time_cond_swap_buff
Unexecuted instantiation: rsa_oaep.c:constant_time_cond_swap_buff
Unexecuted instantiation: f_impl64.c:constant_time_cond_swap_buff
Unexecuted instantiation: statem_srvr.c:constant_time_cond_swap_buff
Unexecuted instantiation: crmf_lib.c:constant_time_cond_swap_buff
421
422
/*
423
 * table is a two dimensional array of bytes. Each row has rowsize elements.
424
 * Copies row number idx into out. rowsize and numrows are not considered
425
 * private.
426
 */
427
static ossl_inline void constant_time_lookup(void *out,
428
    const void *table,
429
    size_t rowsize,
430
    size_t numrows,
431
    size_t idx)
432
52.9k
{
433
52.9k
    size_t i, j;
434
52.9k
    const unsigned char *tablec = (const unsigned char *)table;
435
52.9k
    unsigned char *outc = (unsigned char *)out;
436
52.9k
    unsigned char mask;
437
438
52.9k
    memset(out, 0, rowsize);
439
440
    /* Note idx may underflow - but that is well defined */
441
899k
    for (i = 0; i < numrows; i++, idx--) {
442
846k
        mask = (unsigned char)constant_time_is_zero_s(idx);
443
163M
        for (j = 0; j < rowsize; j++)
444
162M
            *(outc + j) |= constant_time_select_8(mask, *(tablec++), 0);
445
846k
    }
446
52.9k
}
Unexecuted instantiation: err.c:constant_time_lookup
Unexecuted instantiation: bn_lib.c:constant_time_lookup
Unexecuted instantiation: e_aes_cbc_hmac_sha1.c:constant_time_lookup
Unexecuted instantiation: e_aes_cbc_hmac_sha256.c:constant_time_lookup
Unexecuted instantiation: rsa_ossl.c:constant_time_lookup
Unexecuted instantiation: rsa_pk1.c:constant_time_lookup
Unexecuted instantiation: rsa_pmeth.c:constant_time_lookup
Unexecuted instantiation: rsa_enc.c:constant_time_lookup
Unexecuted instantiation: cipher_aes_cbc_hmac_sha1_hw.c:constant_time_lookup
Unexecuted instantiation: cipher_aes_cbc_hmac_sha256_hw.c:constant_time_lookup
Unexecuted instantiation: s3_cbc.c:constant_time_lookup
Unexecuted instantiation: ciphercommon_block.c:constant_time_lookup
Unexecuted instantiation: tls_pad.c:constant_time_lookup
Unexecuted instantiation: bn_exp.c:constant_time_lookup
Unexecuted instantiation: rsaz_exp.c:constant_time_lookup
Unexecuted instantiation: rsaz_exp_x2.c:constant_time_lookup
Unexecuted instantiation: set_key.c:constant_time_lookup
curve448.c:constant_time_lookup
Line
Count
Source
432
52.9k
{
433
52.9k
    size_t i, j;
434
52.9k
    const unsigned char *tablec = (const unsigned char *)table;
435
52.9k
    unsigned char *outc = (unsigned char *)out;
436
52.9k
    unsigned char mask;
437
438
52.9k
    memset(out, 0, rowsize);
439
440
    /* Note idx may underflow - but that is well defined */
441
899k
    for (i = 0; i < numrows; i++, idx--) {
442
846k
        mask = (unsigned char)constant_time_is_zero_s(idx);
443
163M
        for (j = 0; j < rowsize; j++)
444
162M
            *(outc + j) |= constant_time_select_8(mask, *(tablec++), 0);
445
846k
    }
446
52.9k
}
Unexecuted instantiation: curve448_tables.c:constant_time_lookup
Unexecuted instantiation: eddsa.c:constant_time_lookup
Unexecuted instantiation: f_generic.c:constant_time_lookup
Unexecuted instantiation: scalar.c:constant_time_lookup
Unexecuted instantiation: rsa_oaep.c:constant_time_lookup
Unexecuted instantiation: f_impl64.c:constant_time_lookup
Unexecuted instantiation: statem_srvr.c:constant_time_lookup
Unexecuted instantiation: crmf_lib.c:constant_time_lookup
447
448
/*
449
 * Expected usage pattern is to unconditionally set error and then
450
 * wipe it if there was no actual error. |clear| is 1 or 0.
451
 */
452
void err_clear_last_constant_time(int clear);
453
454
#endif /* OSSL_INTERNAL_CONSTANT_TIME_H */