OpenCoverage

threads_pthread.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/openssl/src/crypto/threads_pthread.c
Switch to Source codePreprocessed file
LineSourceCount
1-
2-
3-
4-
5-
6-
7-
8CRYPTO_RWLOCK *CRYPTO_THREAD_lock_new(void)-
9{-
10-
11 CRYPTO_RWLOCK *lock;-
12-
13 if ((lock
(lock = CRYPTO...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 547699 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
= CRYPTO_zalloc(sizeof(pthread_rwlock_t), __FILE__, 24)) ==
(lock = CRYPTO...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 547699 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
0-547699
14 ((void *)0)
(lock = CRYPTO...== ((void *)0)Description
TRUEnever evaluated
FALSEevaluated 547699 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
0-547699
15 ) {-
16-
17 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
18 ((void *)0)
never executed: return ((void *)0) ;
0
19 ;
never executed: return ((void *)0) ;
0
20 }-
21-
22 if (pthread_rwlock_init(lock,
pthread_rwlock...id *)0) ) != 0Description
TRUEnever evaluated
FALSEevaluated 547699 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
0-547699
23 ((void *)0)
pthread_rwlock...id *)0) ) != 0Description
TRUEnever evaluated
FALSEevaluated 547699 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
0-547699
24 ) != 0
pthread_rwlock...id *)0) ) != 0Description
TRUEnever evaluated
FALSEevaluated 547699 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
) {
0-547699
25 CRYPTO_free(lock, __FILE__, 30);-
26 return
never executed: return ((void *)0) ;
never executed: return ((void *)0) ;
0
27 ((void *)0)
never executed: return ((void *)0) ;
0
28 ;
never executed: return ((void *)0) ;
0
29 }-
30 return
executed 547699 times by 12 tests: return lock;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
lock;
executed 547699 times by 12 tests: return lock;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
547699
31}-
32-
33int CRYPTO_THREAD_read_lock(CRYPTO_RWLOCK *lock)-
34{-
35-
36 if (pthread_rwlock_rdlock(lock) != 0
pthread_rwlock...ock(lock) != 0Description
TRUEnever evaluated
FALSEevaluated 191815 times by 11 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
)
0-191815
37 return
never executed: return 0;
0;
never executed: return 0;
0
38-
39-
40-
41-
42-
43 return
executed 191815 times by 11 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
1;
executed 191815 times by 11 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
191815
44}-
45-
46int CRYPTO_THREAD_write_lock(CRYPTO_RWLOCK *lock)-
47{-
48-
49 if (pthread_rwlock_wrlock(lock) != 0
pthread_rwlock...ock(lock) != 0Description
TRUEnever evaluated
FALSEevaluated 4187045 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
)
0-4187045
50 return
never executed: return 0;
0;
never executed: return 0;
0
51-
52-
53-
54-
55-
56 return
executed 4187045 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
1;
executed 4187045 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
4187045
57}-
58-
59int CRYPTO_THREAD_unlock(CRYPTO_RWLOCK *lock)-
60{-
61-
62 if (pthread_rwlock_unlock(lock) != 0
pthread_rwlock...ock(lock) != 0Description
TRUEnever evaluated
FALSEevaluated 4378159 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
)
0-4378159
63 return
never executed: return 0;
0;
never executed: return 0;
0
64-
65-
66-
67-
68-
69 return
executed 4378006 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
1;
executed 4378006 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
4378006
70}-
71-
72void CRYPTO_THREAD_lock_free(CRYPTO_RWLOCK *lock)-
73{-
74 if (lock
lock == ((void *)0)Description
TRUEevaluated 13766 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
FALSEevaluated 547699 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
==
lock == ((void *)0)Description
TRUEevaluated 13766 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
FALSEevaluated 547699 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
13766-547699
75 ((void *)0)
lock == ((void *)0)Description
TRUEevaluated 13766 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
FALSEevaluated 547699 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
13766-547699
76 )-
77 return;
executed 13766 times by 12 tests: return;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
13766
78-
79-
80 pthread_rwlock_destroy(lock);-
81-
82-
83-
84 CRYPTO_free(lock, __FILE__, 106);-
85-
86 return;
executed 547699 times by 12 tests: return;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
547699
87}-
88-
89int CRYPTO_THREAD_run_once(CRYPTO_ONCE *once, void (*init)(void))-
90{-
91 if (pthread_once(once, init) != 0
pthread_once(once, init) != 0Description
TRUEnever evaluated
FALSEevaluated 12835514 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
)
0-12835514
92 return
never executed: return 0;
0;
never executed: return 0;
0
93-
94 return
executed 12834020 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
1;
executed 12834020 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
12834020
95}-
96-
97int CRYPTO_THREAD_init_local(CRYPTO_THREAD_LOCAL *key, void (*cleanup)(void *))-
98{-
99 if (pthread_key_create(key, cleanup) != 0
pthread_key_cr... cleanup) != 0Description
TRUEnever evaluated
FALSEevaluated 5717 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
)
0-5717
100 return
never executed: return 0;
0;
never executed: return 0;
0
101-
102 return
executed 5717 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
1;
executed 5717 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
5717
103}-
104-
105void *CRYPTO_THREAD_get_local(CRYPTO_THREAD_LOCAL *key)-
106{-
107 return
executed 4861308 times by 12 tests: return pthread_getspecific(*key);
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
pthread_getspecific(*key);
executed 4861308 times by 12 tests: return pthread_getspecific(*key);
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
4861308
108}-
109-
110int CRYPTO_THREAD_set_local(CRYPTO_THREAD_LOCAL *key, void *val)-
111{-
112 if (pthread_setspecific(*key, val) != 0
pthread_setspe...key, val) != 0Description
TRUEnever evaluated
FALSEevaluated 12970 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
)
0-12970
113 return
never executed: return 0;
0;
never executed: return 0;
0
114-
115 return
executed 12970 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
1;
executed 12970 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
12970
116}-
117-
118int CRYPTO_THREAD_cleanup_local(CRYPTO_THREAD_LOCAL *key)-
119{-
120 if (pthread_key_delete(*key) != 0
pthread_key_delete(*key) != 0Description
TRUEnever evaluated
FALSEevaluated 5717 times by 12 tests
Evaluated by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
)
0-5717
121 return
never executed: return 0;
0;
never executed: return 0;
0
122-
123 return
executed 5717 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
1;
executed 5717 times by 12 tests: return 1;
Executed by:
  • asn1_internal_test
  • chacha_internal_test
  • ctype_internal_test
  • curve448_internal_test
  • libcrypto.so.1.1
  • modes_internal_test
  • poly1305_internal_test
  • rdrand_sanitytest
  • siphash_internal_test
  • sm2_internal_test
  • sm4_internal_test
  • x509_internal_test
5717
124}-
125-
126CRYPTO_THREAD_ID CRYPTO_THREAD_get_current_id(void)-
127{-
128 return
executed 1060184 times by 2 tests: return pthread_self();
Executed by:
  • libcrypto.so.1.1
  • sm2_internal_test
pthread_self();
executed 1060184 times by 2 tests: return pthread_self();
Executed by:
  • libcrypto.so.1.1
  • sm2_internal_test
1060184
129}-
130-
131int CRYPTO_THREAD_compare_id(CRYPTO_THREAD_ID a, CRYPTO_THREAD_ID b)-
132{-
133 return
executed 2381 times by 1 test: return pthread_equal(a, b);
Executed by:
  • libcrypto.so.1.1
pthread_equal(a, b);
executed 2381 times by 1 test: return pthread_equal(a, b);
Executed by:
  • libcrypto.so.1.1
2381
134}-
135-
136int CRYPTO_atomic_add(int *val, int amount, int *ret, CRYPTO_RWLOCK *lock)-
137{-
138-
139 if (__atomic_is_lock_free(sizeof(*val), val)
__atomic_is_lo...of(*val), val)Description
TRUEevaluated 781 times by 2 tests
Evaluated by:
  • libcrypto.so.1.1
  • sm2_internal_test
FALSEnever evaluated
) {
0-781
140 *ret = __atomic_add_fetch(val, amount, 4);-
141 return
executed 781 times by 2 tests: return 1;
Executed by:
  • libcrypto.so.1.1
  • sm2_internal_test
1;
executed 781 times by 2 tests: return 1;
Executed by:
  • libcrypto.so.1.1
  • sm2_internal_test
781
142 }-
143-
144 if (!CRYPTO_THREAD_write_lock(lock)
!CRYPTO_THREAD...ite_lock(lock)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
145 return
never executed: return 0;
0;
never executed: return 0;
0
146-
147 *val += amount;-
148 *ret = *val;-
149-
150 if (!CRYPTO_THREAD_unlock(lock)
!CRYPTO_THREAD_unlock(lock)Description
TRUEnever evaluated
FALSEnever evaluated
)
0
151 return
never executed: return 0;
0;
never executed: return 0;
0
152-
153 return
never executed: return 1;
1;
never executed: return 1;
0
154}-
155-
156-
157static pthread_once_t fork_once_control = -
158 0-
159 ;-
160-
161static void fork_once_func(void)-
162{-
163 pthread_atfork(OPENSSL_fork_prepare,-
164 OPENSSL_fork_parent, OPENSSL_fork_child);-
165}
never executed: end of block
0
166-
167-
168int openssl_init_fork_handlers(void)-
169{-
170-
171 if (pthread_once(&fork_once_control, fork_once_func) == 0
pthread_once(&...nce_func) == 0Description
TRUEnever evaluated
FALSEnever evaluated
)
0
172 return
never executed: return 1;
1;
never executed: return 1;
0
173-
174 return
never executed: return 0;
0;
never executed: return 0;
0
175}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2