Coverage Report

Created: 2026-07-23 06:28

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
324M
{
101
324M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
324M
}
err.c:constant_time_msb
Line
Count
Source
100
10.6k
{
101
10.6k
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
10.6k
}
bn_lib.c:constant_time_msb
Line
Count
Source
100
68.0M
{
101
68.0M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
68.0M
}
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
10.6k
{
101
10.6k
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
10.6k
}
rsa_pk1.c:constant_time_msb
Line
Count
Source
100
2.22M
{
101
2.22M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
2.22M
}
Unexecuted instantiation: rsa_pmeth.c:constant_time_msb
rsa_enc.c:constant_time_msb
Line
Count
Source
100
10.5k
{
101
10.5k
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
10.5k
}
cipher_aes_cbc_hmac_sha1_hw.c:constant_time_msb
Line
Count
Source
100
240
{
101
240
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
240
}
cipher_aes_cbc_hmac_sha256_hw.c:constant_time_msb
Line
Count
Source
100
242
{
101
242
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
242
}
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
5.07M
{
101
5.07M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
5.07M
}
bn_exp.c:constant_time_msb
Line
Count
Source
100
249M
{
101
249M
    return 0 - (a >> (sizeof(a) * 8 - 1));
102
249M
}
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
509
{
111
509
    return 0 - (a >> 63);
112
509
}
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
Unexecuted instantiation: curve448.c:constant_time_msb_64
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
484
{
111
484
    return 0 - (a >> 63);
112
484
}
scalar.c:constant_time_msb_64
Line
Count
Source
110
25
{
111
25
    return 0 - (a >> 63);
112
25
}
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
58.1M
{
116
58.1M
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
58.1M
}
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
10.5k
{
116
10.5k
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
10.5k
}
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
140k
{
116
140k
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
140k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_msb_s
tls_pad.c:constant_time_msb_s
Line
Count
Source
115
57.5M
{
116
57.5M
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
57.5M
}
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
489k
{
116
489k
    return 0 - (a >> (sizeof(a) * 8 - 1));
117
489k
}
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
482
{
122
482
    return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));
123
482
}
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
240
{
122
240
    return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));
123
240
}
cipher_aes_cbc_hmac_sha256_hw.c:constant_time_lt
Line
Count
Source
121
242
{
122
242
    return constant_time_msb(a ^ ((a ^ b) | ((a - b) ^ b)));
123
242
}
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
44.3M
{
127
44.3M
    return constant_time_msb_s(a ^ ((a ^ b) | ((a - b) ^ b)));
128
44.3M
}
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
138k
{
127
138k
    return constant_time_msb_s(a ^ ((a ^ b) | ((a - b) ^ b)));
128
138k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_lt_s
tls_pad.c:constant_time_lt_s
Line
Count
Source
126
44.2M
{
127
44.2M
    return constant_time_msb_s(a ^ ((a ^ b) | ((a - b) ^ b)));
128
44.2M
}
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
24.8M
{
144
24.8M
    return 0 - (a >> (sizeof(a) * 8 - 1));
145
24.8M
}
Unexecuted instantiation: err.c:constant_time_msb_bn
bn_lib.c:constant_time_msb_bn
Line
Count
Source
143
24.8M
{
144
24.8M
    return 0 - (a >> (sizeof(a) * 8 - 1));
145
24.8M
}
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
24.6M
{
149
24.6M
    return constant_time_msb_bn(a ^ ((a ^ b) | ((a - b) ^ b)));
150
24.6M
}
Unexecuted instantiation: err.c:constant_time_lt_bn
bn_lib.c:constant_time_lt_bn
Line
Count
Source
148
24.6M
{
149
24.6M
    return constant_time_msb_bn(a ^ ((a ^ b) | ((a - b) ^ b)));
150
24.6M
}
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
126k
{
154
126k
    return constant_time_msb_bn(~a & (a - 1));
155
126k
}
Unexecuted instantiation: err.c:constant_time_is_zero_bn
bn_lib.c:constant_time_is_zero_bn
Line
Count
Source
153
126k
{
154
126k
    return constant_time_msb_bn(~a & (a - 1));
155
126k
}
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.39k
{
160
6.39k
    return constant_time_is_zero_bn(a ^ b);
161
6.39k
}
Unexecuted instantiation: err.c:constant_time_eq_bn
bn_lib.c:constant_time_eq_bn
Line
Count
Source
159
6.39k
{
160
6.39k
    return constant_time_is_zero_bn(a ^ b);
161
6.39k
}
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
482
{
167
482
    return ~constant_time_lt(a, b);
168
482
}
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
240
{
167
240
    return ~constant_time_lt(a, b);
168
240
}
cipher_aes_cbc_hmac_sha256_hw.c:constant_time_ge
Line
Count
Source
166
242
{
167
242
    return ~constant_time_lt(a, b);
168
242
}
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
13.1M
{
172
13.1M
    return ~constant_time_lt_s(a, b);
173
13.1M
}
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
138k
{
172
138k
    return ~constant_time_lt_s(a, b);
173
138k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_ge_s
tls_pad.c:constant_time_ge_s
Line
Count
Source
171
12.9M
{
172
12.9M
    return ~constant_time_lt_s(a, b);
173
12.9M
}
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
12.9M
{
183
12.9M
    return (unsigned char)constant_time_ge_s(a, b);
184
12.9M
}
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
138k
{
183
138k
    return (unsigned char)constant_time_ge_s(a, b);
184
138k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_ge_8_s
tls_pad.c:constant_time_ge_8_s
Line
Count
Source
182
12.7M
{
183
12.7M
    return (unsigned char)constant_time_ge_s(a, b);
184
12.7M
}
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
323M
{
188
323M
    return constant_time_msb(~a & (a - 1));
189
323M
}
err.c:constant_time_is_zero
Line
Count
Source
187
10.6k
{
188
10.6k
    return constant_time_msb(~a & (a - 1));
189
10.6k
}
bn_lib.c:constant_time_is_zero
Line
Count
Source
187
67.0M
{
188
67.0M
    return constant_time_msb(~a & (a - 1));
189
67.0M
}
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.22M
{
188
2.22M
    return constant_time_msb(~a & (a - 1));
189
2.22M
}
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
5.07M
{
188
5.07M
    return constant_time_msb(~a & (a - 1));
189
5.07M
}
bn_exp.c:constant_time_is_zero
Line
Count
Source
187
249M
{
188
249M
    return constant_time_msb(~a & (a - 1));
189
249M
}
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
13.7M
{
193
13.7M
    return constant_time_msb_s(~a & (a - 1));
194
13.7M
}
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.03k
{
193
2.03k
    return constant_time_msb_s(~a & (a - 1));
194
2.03k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_is_zero_s
tls_pad.c:constant_time_is_zero_s
Line
Count
Source
192
13.2M
{
193
13.2M
    return constant_time_msb_s(~a & (a - 1));
194
13.2M
}
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
489k
{
193
489k
    return constant_time_msb_s(~a & (a - 1));
194
489k
}
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.18M
{
198
2.18M
    return (unsigned char)constant_time_is_zero(a);
199
2.18M
}
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.18M
{
198
2.18M
    return (unsigned char)constant_time_is_zero(a);
199
2.18M
}
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
509
{
208
509
    return constant_time_msb_64(~a & (a - 1));
209
509
}
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
Unexecuted instantiation: curve448.c:constant_time_is_zero_64
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
484
{
208
484
    return constant_time_msb_64(~a & (a - 1));
209
484
}
scalar.c:constant_time_is_zero_64
Line
Count
Source
207
25
{
208
25
    return constant_time_msb_64(~a & (a - 1));
209
25
}
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
321M
{
214
321M
    return constant_time_is_zero(a ^ b);
215
321M
}
err.c:constant_time_eq
Line
Count
Source
213
10.6k
{
214
10.6k
    return constant_time_is_zero(a ^ b);
215
10.6k
}
bn_lib.c:constant_time_eq
Line
Count
Source
213
67.0M
{
214
67.0M
    return constant_time_is_zero(a ^ b);
215
67.0M
}
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
31.7k
{
214
31.7k
    return constant_time_is_zero(a ^ b);
215
31.7k
}
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
5.07M
{
214
5.07M
    return constant_time_is_zero(a ^ b);
215
5.07M
}
bn_exp.c:constant_time_eq
Line
Count
Source
213
249M
{
214
249M
    return constant_time_is_zero(a ^ b);
215
249M
}
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
13.2M
{
219
13.2M
    return constant_time_is_zero_s(a ^ b);
220
13.2M
}
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.03k
{
219
2.03k
    return constant_time_is_zero_s(a ^ b);
220
2.03k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_eq_s
tls_pad.c:constant_time_eq_s
Line
Count
Source
218
13.2M
{
219
13.2M
    return constant_time_is_zero_s(a ^ b);
220
13.2M
}
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
5.07M
{
225
5.07M
    return (unsigned char)constant_time_eq(a, b);
226
5.07M
}
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
5.07M
{
225
5.07M
    return (unsigned char)constant_time_eq(a, b);
226
5.07M
}
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.03k
{
230
2.03k
    return (unsigned char)constant_time_eq_s(a, b);
231
2.03k
}
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.03k
{
230
2.03k
    return (unsigned char)constant_time_eq_s(a, b);
231
2.03k
}
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
316M
{
235
316M
    return constant_time_eq((unsigned)(a), (unsigned)(b));
236
316M
}
err.c:constant_time_eq_int
Line
Count
Source
234
10.6k
{
235
10.6k
    return constant_time_eq((unsigned)(a), (unsigned)(b));
236
10.6k
}
bn_lib.c:constant_time_eq_int
Line
Count
Source
234
67.0M
{
235
67.0M
    return constant_time_eq((unsigned)(a), (unsigned)(b));
236
67.0M
}
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
249M
{
235
249M
    return constant_time_eq((unsigned)(a), (unsigned)(b));
236
249M
}
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
261M
{
252
261M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
261M
    unsigned int r;
254
261M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
261M
    return r;
259
261M
}
err.c:value_barrier
Line
Count
Source
251
21.2k
{
252
21.2k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
21.2k
    unsigned int r;
254
21.2k
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
21.2k
    return r;
259
21.2k
}
bn_lib.c:value_barrier
Line
Count
Source
251
51.7M
{
252
51.7M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
51.7M
    unsigned int r;
254
51.7M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
51.7M
    return r;
259
51.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.01M
{
252
1.01M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
1.01M
    unsigned int r;
254
1.01M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
1.01M
    return r;
259
1.01M
}
Unexecuted instantiation: rsa_pmeth.c:value_barrier
rsa_enc.c:value_barrier
Line
Count
Source
251
21.1k
{
252
21.1k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
21.1k
    unsigned int r;
254
21.1k
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
21.1k
    return r;
259
21.1k
}
cipher_aes_cbc_hmac_sha1_hw.c:value_barrier
Line
Count
Source
251
480
{
252
480
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
480
    unsigned int r;
254
480
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
480
    return r;
259
480
}
cipher_aes_cbc_hmac_sha256_hw.c:value_barrier
Line
Count
Source
251
484
{
252
484
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
484
    unsigned int r;
254
484
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
484
    return r;
259
484
}
s3_cbc.c:value_barrier
Line
Count
Source
251
155k
{
252
155k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
155k
    unsigned int r;
254
155k
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
155k
    return r;
259
155k
}
Unexecuted instantiation: ciphercommon_block.c:value_barrier
tls_pad.c:value_barrier
Line
Count
Source
251
20.2M
{
252
20.2M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
20.2M
    unsigned int r;
254
20.2M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
20.2M
    return r;
259
20.2M
}
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
188M
{
252
188M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
253
188M
    unsigned int r;
254
188M
    __asm__("" : "=r"(r) : "0"(a));
255
#else
256
    volatile unsigned int r = a;
257
#endif
258
188M
    return r;
259
188M
}
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.00M
{
276
1.00M
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
277
1.00M
    uint64_t r;
278
1.00M
    __asm__("" : "=r"(r) : "0"(a));
279
#else
280
    volatile uint64_t r = a;
281
#endif
282
1.00M
    return r;
283
1.00M
}
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
993k
{
276
993k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
277
993k
    uint64_t r;
278
993k
    __asm__("" : "=r"(r) : "0"(a));
279
#else
280
    volatile uint64_t r = a;
281
#endif
282
993k
    return r;
283
993k
}
Unexecuted instantiation: curve448_tables.c:value_barrier_64
Unexecuted instantiation: eddsa.c:value_barrier_64
Unexecuted instantiation: f_generic.c:value_barrier_64
scalar.c:value_barrier_64
Line
Count
Source
275
447
{
276
447
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
277
447
    uint64_t r;
278
447
    __asm__("" : "=r"(r) : "0"(a));
279
#else
280
    volatile uint64_t r = a;
281
#endif
282
447
    return r;
283
447
}
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
21.1k
{
288
21.1k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
289
21.1k
    size_t r;
290
21.1k
    __asm__("" : "=r"(r) : "0"(a));
291
#else
292
    volatile size_t r = a;
293
#endif
294
21.1k
    return r;
295
21.1k
}
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
21.1k
{
288
21.1k
#if !defined(OPENSSL_NO_ASM) && defined(__GNUC__)
289
21.1k
    size_t r;
290
21.1k
    __asm__("" : "=r"(r) : "0"(a));
291
#else
292
    volatile size_t r = a;
293
#endif
294
21.1k
    return r;
295
21.1k
}
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
130M
{
313
130M
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
130M
}
err.c:constant_time_select
Line
Count
Source
312
10.6k
{
313
10.6k
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
10.6k
}
bn_lib.c:constant_time_select
Line
Count
Source
312
25.8M
{
313
25.8M
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
25.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
508k
{
313
508k
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
508k
}
Unexecuted instantiation: rsa_pmeth.c:constant_time_select
rsa_enc.c:constant_time_select
Line
Count
Source
312
10.5k
{
313
10.5k
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
10.5k
}
cipher_aes_cbc_hmac_sha1_hw.c:constant_time_select
Line
Count
Source
312
240
{
313
240
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
240
}
cipher_aes_cbc_hmac_sha256_hw.c:constant_time_select
Line
Count
Source
312
242
{
313
242
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
242
}
s3_cbc.c:constant_time_select
Line
Count
Source
312
77.9k
{
313
77.9k
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
77.9k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_select
tls_pad.c:constant_time_select
Line
Count
Source
312
10.1M
{
313
10.1M
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
10.1M
}
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
94.0M
{
313
94.0M
    return (value_barrier(mask) & a) | (value_barrier(~mask) & b);
314
94.0M
}
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
10.5k
{
320
10.5k
    return (value_barrier_s(mask) & a) | (value_barrier_s(~mask) & b);
321
10.5k
}
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
10.5k
{
320
10.5k
    return (value_barrier_s(mask) & a) | (value_barrier_s(~mask) & b);
321
10.5k
}
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
104M
{
327
104M
    return (unsigned char)constant_time_select(mask, a, b);
328
104M
}
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
508k
{
327
508k
    return (unsigned char)constant_time_select(mask, a, b);
328
508k
}
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
77.9k
{
327
77.9k
    return (unsigned char)constant_time_select(mask, a, b);
328
77.9k
}
Unexecuted instantiation: ciphercommon_block.c:constant_time_select_8
tls_pad.c:constant_time_select_8
Line
Count
Source
326
10.1M
{
327
10.1M
    return (unsigned char)constant_time_select(mask, a, b);
328
10.1M
}
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
94.0M
{
327
94.0M
    return (unsigned char)constant_time_select(mask, a, b);
328
94.0M
}
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
25.9M
{
333
25.9M
    return (int)constant_time_select(mask, (unsigned)(a), (unsigned)(b));
334
25.9M
}
err.c:constant_time_select_int
Line
Count
Source
332
10.6k
{
333
10.6k
    return (int)constant_time_select(mask, (unsigned)(a), (unsigned)(b));
334
10.6k
}
bn_lib.c:constant_time_select_int
Line
Count
Source
332
25.8M
{
333
25.8M
    return (int)constant_time_select(mask, (unsigned)(a), (unsigned)(b));
334
25.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
10.5k
{
333
10.5k
    return (int)constant_time_select(mask, (unsigned)(a), (unsigned)(b));
334
10.5k
}
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
251k
{
351
251k
    return (value_barrier_64(mask) & a) | (value_barrier_64(~mask) & b);
352
251k
}
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
244k
{
351
244k
    return (value_barrier_64(mask) & a) | (value_barrier_64(~mask) & b);
352
244k
}
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
503k
{
387
503k
    uint64_t xor = *a ^ *b;
388
389
503k
    xor&= value_barrier_64(mask);
390
503k
    *a ^= xor;
391
503k
    *b ^= xor;
392
503k
}
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
503k
{
387
503k
    uint64_t xor = *a ^ *b;
388
389
503k
    xor&= value_barrier_64(mask);
390
503k
    *a ^= xor;
391
503k
    *b ^= xor;
392
503k
}
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
30.6k
{
433
30.6k
    size_t i, j;
434
30.6k
    const unsigned char *tablec = (const unsigned char *)table;
435
30.6k
    unsigned char *outc = (unsigned char *)out;
436
30.6k
    unsigned char mask;
437
438
30.6k
    memset(out, 0, rowsize);
439
440
    /* Note idx may underflow - but that is well defined */
441
520k
    for (i = 0; i < numrows; i++, idx--) {
442
489k
        mask = (unsigned char)constant_time_is_zero_s(idx);
443
94.4M
        for (j = 0; j < rowsize; j++)
444
94.0M
            *(outc + j) |= constant_time_select_8(mask, *(tablec++), 0);
445
489k
    }
446
30.6k
}
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
30.6k
{
433
30.6k
    size_t i, j;
434
30.6k
    const unsigned char *tablec = (const unsigned char *)table;
435
30.6k
    unsigned char *outc = (unsigned char *)out;
436
30.6k
    unsigned char mask;
437
438
30.6k
    memset(out, 0, rowsize);
439
440
    /* Note idx may underflow - but that is well defined */
441
520k
    for (i = 0; i < numrows; i++, idx--) {
442
489k
        mask = (unsigned char)constant_time_is_zero_s(idx);
443
94.4M
        for (j = 0; j < rowsize; j++)
444
94.0M
            *(outc + j) |= constant_time_select_8(mask, *(tablec++), 0);
445
489k
    }
446
30.6k
}
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 */