#define NWRAP_INET_ADDRSTRLEN INET_ADDRSTRLEN
#endif
-static pthread_mutex_t nss_module_symbol_binding_mutex = PTHREAD_MUTEX_INITIALIZER;
-
static bool nwrap_initialized = false;
static pthread_mutex_t nwrap_initialized_mutex = PTHREAD_MUTEX_INITIALIZER;
* nwrap_init() function.
*/
# define NWRAP_LOCK_ALL do { \
- nwrap_mutex_lock(&nss_module_symbol_binding_mutex); \
nwrap_mutex_lock(&nwrap_initialized_mutex); \
nwrap_mutex_lock(&nwrap_global_mutex); \
nwrap_mutex_lock(&nwrap_gr_global_mutex); \
nwrap_mutex_unlock(&nwrap_gr_global_mutex); \
nwrap_mutex_unlock(&nwrap_global_mutex); \
nwrap_mutex_unlock(&nwrap_initialized_mutex); \
- nwrap_mutex_unlock(&nss_module_symbol_binding_mutex); \
} while (0);
static void nwrap_init(void);
}
#define nwrap_nss_module_bind_symbol(sym_name) \
- nwrap_mutex_lock(&nss_module_symbol_binding_mutex); \
if (symbols->_nss_##sym_name.obj == NULL) { \
symbols->_nss_##sym_name.obj = \
_nwrap_bind_nss_module_symbol(b, #sym_name); \
- } \
- nwrap_mutex_unlock(&nss_module_symbol_binding_mutex)
+ }
#define nwrap_nss_module_bind_symbol2(sym_name, alt_name) \
- nwrap_mutex_lock(&nss_module_symbol_binding_mutex); \
if (symbols->_nss_##sym_name.obj == NULL) { \
symbols->_nss_##sym_name.obj = \
_nwrap_bind_nss_module_symbol(b, #alt_name); \
- } \
- nwrap_mutex_unlock(&nss_module_symbol_binding_mutex)
+ }
static struct nwrap_nss_module_symbols *
nwrap_bind_nss_module_symbols(struct nwrap_backend *b)