summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaiki Ueno <ueno@gnu.org>2021-11-16 18:00:12 +0100
committerDaiki Ueno <ueno@gnu.org>2021-11-17 07:36:49 +0100
commit84dbd61454d8dbe5b2b0f9ef2798838e95428ac1 (patch)
tree9792b6420c2f8a246a49028c95f9f816464cb572
parent482380e9eb78ee134ca985fd7d03306b07c457ce (diff)
downloadgnutls-84dbd61454d8dbe5b2b0f9ef2798838e95428ac1.tar.gz
verify-tofu: switch to using static mutex for locking
Signed-off-by: Daiki Ueno <ueno@gnu.org>
-rw-r--r--lib/global.c8
-rw-r--r--lib/verify-tofu.c8
2 files changed, 4 insertions, 12 deletions
diff --git a/lib/global.c b/lib/global.c
index 6684f12b98..d725db8dfd 100644
--- a/lib/global.c
+++ b/lib/global.c
@@ -70,7 +70,6 @@ inline static int _gnutls_global_init_skip(void)
/* created by asn1c */
extern const asn1_static_node gnutls_asn1_tab[];
extern const asn1_static_node pkix_asn1_tab[];
-void *_gnutls_file_mutex;
void *_gnutls_pkcs11_mutex;
asn1_node _gnutls_pkix1_asn = NULL;
@@ -312,12 +311,6 @@ static int _gnutls_global_init(unsigned constructor)
goto out;
}
- ret = gnutls_mutex_init(&_gnutls_file_mutex);
- if (ret < 0) {
- gnutls_assert();
- goto out;
- }
-
ret = gnutls_mutex_init(&_gnutls_pkcs11_mutex);
if (ret < 0) {
gnutls_assert();
@@ -437,7 +430,6 @@ static void _gnutls_global_deinit(unsigned destructor)
_gnutls_nss_keylog_deinit();
- gnutls_mutex_deinit(&_gnutls_file_mutex);
gnutls_mutex_deinit(&_gnutls_pkcs11_mutex);
} else {
if (_gnutls_init > 0)
diff --git a/lib/verify-tofu.c b/lib/verify-tofu.c
index 4e65c739f7..40b7acdc8a 100644
--- a/lib/verify-tofu.c
+++ b/lib/verify-tofu.c
@@ -35,6 +35,8 @@
#include <system.h>
#include <locks.h>
+GNUTLS_STATIC_MUTEX(file_mutex);
+
struct gnutls_tdb_int {
gnutls_tdb_store_func store;
gnutls_tdb_store_commitment_func cstore;
@@ -58,8 +60,6 @@ int store_pubkey(const char *db_name, const char *host,
static int find_config_file(char *file, size_t max_size);
-extern void *_gnutls_file_mutex;
-
struct gnutls_tdb_int default_tdb = {
store_pubkey,
store_commitment,
@@ -404,7 +404,7 @@ int store_pubkey(const char *db_name, const char *host,
gnutls_datum_t b64key = { NULL, 0 };
int ret;
- ret = gnutls_mutex_lock(&_gnutls_file_mutex);
+ ret = gnutls_static_mutex_lock(&file_mutex);
if (ret != 0)
return gnutls_assert_val(GNUTLS_E_LOCKING_ERROR);
@@ -434,7 +434,7 @@ int store_pubkey(const char *db_name, const char *host,
if (fp != NULL)
fclose(fp);
- gnutls_mutex_unlock(&_gnutls_file_mutex);
+ gnutls_static_mutex_unlock(&file_mutex);
gnutls_free(b64key.data);
return ret;