From 96ee78ec4a0707114d2f8ef7590d08cfd25080ea Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Tue, 19 Sep 2023 14:36:16 +0200 Subject: libnftables: drop gmp_init() and mp_set_memory_functions() Setting global handles for libgmp via mp_set_memory_functions() is very ugly. When we don't use mini-gmp, then potentially there are other users of the library in the same process, and every process fighting about the allocation functions is not gonna work. It also means, we must not reset the allocation functions after somebody already allocated GMP data with them. Which we cannot ensure, as we don't know what other parts of the process are doing. It's also unnecessary. The default allocation functions for gmp and mini-gmp already abort the process on allocation failure ([1], [2]), just like our xmalloc(). Just don't do this. [1] https://gmplib.org/repo/gmp/file/8225bdfc499f/memory.c#l37 [2] https://git.netfilter.org/nftables/tree/src/mini-gmp.c?id=6d19a902c1d77cb51b940b1ce65f31b1cad38b74#n286 Signed-off-by: Thomas Haller Signed-off-by: Pablo Neira Ayuso --- src/libnftables.c | 1 - 1 file changed, 1 deletion(-) (limited to 'src/libnftables.c') diff --git a/src/libnftables.c b/src/libnftables.c index 7d36577d..cedd710b 100644 --- a/src/libnftables.c +++ b/src/libnftables.c @@ -196,7 +196,6 @@ struct nft_ctx *nft_ctx_new(uint32_t flags) if (!init_once) { init_once = true; - gmp_init(); #ifdef HAVE_LIBXTABLES xt_init(); #endif -- cgit v1.2.3