zget.c yaz-ccl.c diag-entry.c diag-entry.h \
logrpn.c \
otherinfo.c pquery.c sortspec.c charneg.c initopt.c init_diag.c \
+ init_globals.c \
zoom-c.c zoom-memcached.c zoom-z3950.c zoom-sru.c zoom-query.c \
zoom-record-cache.c zoom-event.c \
record_render.c zoom-socket.c zoom-opt.c zoom-p.h sru_facet.c sru-p.h \
yaz_mutex_leave(log_mutex);
}
-static void internal_log_init(void)
+void yaz_log_init_globals(void)
{
- static int mutex_init_flag = 0; /* not yet initialized */
char *env;
- if (mutex_init_flag)
- return;
- mutex_init_flag = 1; /* here, 'cause nmem_mutex_create may call yaz_log */
-
if (log_mutex == 0)
yaz_mutex_create(&log_mutex);
#if YAZ_POSIX_THREADS
l_level = yaz_log_mask_str_x(env, l_level);
}
-
FILE *yaz_log_file(void)
{
FILE *f = 0;
void yaz_log_init_file(const char *fname)
{
- internal_log_init();
+ yaz_init_globals();
yaz_log_close();
if (fname)
void yaz_log_init_level(int level)
{
- internal_log_init();
+ yaz_init_globals();
if ( (l_level & YLOG_FLUSH) != (level & YLOG_FLUSH) )
{
l_level = level;
void yaz_log_init(int level, const char *prefix, const char *fname)
{
- internal_log_init();
+ yaz_init_globals();
yaz_log_init_level(level);
yaz_log_init_prefix(prefix);
if (fname && *fname)
struct tm *tm;
#endif
- internal_log_init();
-
yaz_log_lock();
#if HAVE_LOCALTIME_R
localtime_r(&ti, tm);
FILE *file;
int o_level = level;
- internal_log_init();
+ yaz_init_globals();
if (!(level & l_level))
return;
va_start(ap, fmt);
int i;
char clean[255];
char *n = clean_name(name, strlen(name), clean, sizeof(clean));
- internal_log_init();
+ yaz_init_globals();
for (i = 0; mask_names[i].name; i++)
if (0==strcmp(n, mask_names[i].name))
int yaz_log_mask_str(const char *str)
{
- internal_log_init(); /* since l_level may be affected */
+ yaz_init_globals(); /* since l_level may be affected */
return yaz_log_mask_str_x(str, l_level);
}
{
const char *p;
- internal_log_init();
+ yaz_init_globals();
while (*str)
{
int negated = 0;
static int tcpip_init(void)
{
static int initialized = 0;
+ yaz_init_globals();
if (!initialized)
{
WORD requested;
#else
static int tcpip_init(void)
{
+ yaz_init_globals();
return 1;
}
#endif
#if HAVE_GNUTLS_H
if (h->type == ssl_type && !sp->session)
{
- gnutls_global_init();
tcpip_create_cred(h);
gnutls_init(&sp->session, GNUTLS_CLIENT);
gnutls_set_default_priority(sp->session);