crypto: add preemptive threading support
[openssl.git] / crypto / thread / arch / thread_none.c
1 /*
2  * Copyright 2019-2021 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 #include <internal/thread_arch.h>
11
12 #if defined(OPENSSL_THREADS_NONE)
13
14 int ossl_crypto_thread_native_spawn(CRYPTO_THREAD *thread)
15 {
16     return 0;
17 }
18
19 int ossl_crypto_thread_native_join(CRYPTO_THREAD *thread, CRYPTO_THREAD_RETVAL *retval)
20 {
21     return 0;
22 }
23
24 int ossl_crypto_thread_native_terminate(CRYPTO_THREAD *thread)
25 {
26     return 0;
27 }
28
29 int ossl_crypto_thread_native_exit(void)
30 {
31     return 0;
32 }
33
34 int ossl_crypto_thread_native_is_self(CRYPTO_THREAD *thread)
35 {
36     return 0;
37 }
38
39 CRYPTO_MUTEX *ossl_crypto_mutex_new(void)
40 {
41     return NULL;
42 }
43
44 void ossl_crypto_mutex_lock(CRYPTO_MUTEX *mutex)
45 {
46 }
47
48 int ossl_crypto_mutex_try_lock(CRYPTO_MUTEX *mutex)
49 {
50     return 0;
51 }
52
53 void ossl_crypto_mutex_unlock(CRYPTO_MUTEX *mutex)
54 {
55 }
56
57 void ossl_crypto_mutex_free(CRYPTO_MUTEX **mutex)
58 {
59 }
60
61 CRYPTO_CONDVAR *ossl_crypto_condvar_new(void)
62 {
63     return NULL;
64 }
65
66 void ossl_crypto_condvar_wait(CRYPTO_CONDVAR *cv, CRYPTO_MUTEX *mutex)
67 {
68 }
69
70 void ossl_crypto_condvar_broadcast(CRYPTO_CONDVAR *cv)
71 {
72 }
73
74 void ossl_crypto_condvar_free(CRYPTO_CONDVAR **cv)
75 {
76 }
77
78 void ossl_crypto_mem_barrier(void)
79 {
80 }
81
82 #endif