summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2021-01-28 13:11:51 +0100
committerStefan Metzmacher <metze@samba.org>2021-01-28 15:27:11 +0100
commit5a76d7304ca655b668ee0df9f35a801121fb8d8e (patch)
treeb7b1f51f9ae72aeaa4dece9c5afce6c9e22dd736
parent8c524f7d35b649451888932b86a7118e99b02716 (diff)
downloadsocket_wrapper-5a76d7304ca655b668ee0df9f35a801121fb8d8e.tar.gz
socket_wrapper-5a76d7304ca655b668ee0df9f35a801121fb8d8e.tar.xz
socket_wrapper-5a76d7304ca655b668ee0df9f35a801121fb8d8e.zip
src/socket_wrapper.c: split out _swrap_bind_symbol_generic()
Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
-rw-r--r--src/socket_wrapper.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/src/socket_wrapper.c b/src/socket_wrapper.c
index 9935681..5101e7a 100644
--- a/src/socket_wrapper.c
+++ b/src/socket_wrapper.c
@@ -726,25 +726,21 @@ static void swrap_mutex_unlock(pthread_mutex_t *mutex)
* This is an optimization to avoid locking each time we check if the symbol is
* bound.
*/
-#define swrap_bind_symbol_libc(sym_name) \
+#define _swrap_bind_symbol_generic(lib, sym_name) \
if (swrap.libc.symbols._libc_##sym_name.obj == NULL) { \
swrap_mutex_lock(&libc_symbol_binding_mutex); \
if (swrap.libc.symbols._libc_##sym_name.obj == NULL) { \
swrap.libc.symbols._libc_##sym_name.obj = \
- _swrap_bind_symbol(SWRAP_LIBC, #sym_name); \
+ _swrap_bind_symbol(lib, #sym_name); \
} \
swrap_mutex_unlock(&libc_symbol_binding_mutex); \
}
+#define swrap_bind_symbol_libc(sym_name) \
+ _swrap_bind_symbol_generic(SWRAP_LIBC, sym_name)
+
#define swrap_bind_symbol_libsocket(sym_name) \
- if (swrap.libc.symbols._libc_##sym_name.obj == NULL) { \
- swrap_mutex_lock(&libc_symbol_binding_mutex); \
- if (swrap.libc.symbols._libc_##sym_name.obj == NULL) { \
- swrap.libc.symbols._libc_##sym_name.obj = \
- _swrap_bind_symbol(SWRAP_LIBSOCKET, #sym_name); \
- } \
- swrap_mutex_unlock(&libc_symbol_binding_mutex); \
- }
+ _swrap_bind_symbol_generic(SWRAP_LIBSOCKET, sym_name)
/****************************************************************************
* IMPORTANT