diff options
author | Stefan Metzmacher <metze@samba.org> | 2021-01-28 13:11:51 +0100 |
---|---|---|
committer | Stefan Metzmacher <metze@samba.org> | 2021-01-28 15:27:11 +0100 |
commit | 5a76d7304ca655b668ee0df9f35a801121fb8d8e (patch) | |
tree | b7b1f51f9ae72aeaa4dece9c5afce6c9e22dd736 | |
parent | 8c524f7d35b649451888932b86a7118e99b02716 (diff) | |
download | socket_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.c | 16 |
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 |