]> git.sur5r.net Git - openldap/blob - servers/slurpd/globals.c
back-sql attribute handling
[openldap] / servers / slurpd / globals.c
1 /* $OpenLDAP$ */
2 /*
3  * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
4  * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
5  */
6 /*
7  * Copyright (c) 1996 Regents of the University of Michigan.
8  * All rights reserved.
9  *
10  * Redistribution and use in source and binary forms are permitted
11  * provided that this notice is preserved and that due credit is given
12  * to the University of Michigan at Ann Arbor. The name of the University
13  * may not be used to endorse or promote products derived from this
14  * software without specific prior written permission. This software
15  * is provided ``as is'' without express or implied warranty.
16  */
17
18 /*
19  * globals.c - initialization code for global data
20  */
21
22 #include "portable.h"
23
24 #include <stdio.h>
25
26 #include <ac/stdlib.h>
27 #include <ac/string.h>
28
29 #include "slurp.h"
30 #include "globals.h"
31
32 Globals          *sglob;
33
34 int ldap_syslog = 0;
35 #ifdef LOG_DEBUG
36 int ldap_syslog_level = LOG_DEBUG;
37 #else
38 int ldap_syslog_level = 0;
39 #endif
40 int ldap_debug = 0;
41
42
43 /*
44  * Initialize the globals
45  */
46 Globals *
47 init_globals( void )
48 {
49     Globals *g;
50
51     g = ( Globals * ) malloc( sizeof( Globals ));
52     if ( g == NULL ) {
53         return NULL;
54     }
55
56     g->slapd_configfile = SLAPD_DEFAULT_CONFIGFILE;
57     g->no_work_interval = DEFAULT_NO_WORK_INTERVAL;
58     g->slurpd_shutdown = 0;
59     g->num_replicas = 0;
60     g->replicas = NULL;
61     g->slurpd_rdir = DEFAULT_SLURPD_REPLICA_DIR "/replica";
62     strcpy( g->slurpd_status_file, DEFAULT_SLURPD_STATUS_FILE );
63     g->slapd_replogfile[ 0 ] = '\0';
64     g->slurpd_replogfile[ 0 ] = '\0';
65     g->slurpd_status_file[ 0 ] = '\0';
66     g->one_shot_mode = 0;
67     g->no_detach = 0;
68     g->myname = NULL;
69     g->srpos = 0L;
70     if ( St_init( &(g->st)) < 0 ) {
71         fprintf( stderr, "Cannot initialize status data\n" );
72         exit( EXIT_FAILURE );
73     }
74     ldap_pvt_thread_mutex_init( &(g->rej_mutex) );
75     if ( Rq_init( &(g->rq)) < 0 ) {
76         fprintf( stderr, "Cannot initialize queue\n" );
77         exit( EXIT_FAILURE );
78     }
79 #ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
80     g->default_srvtab = SRVTAB;
81 #endif /* LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND */
82
83     return g;
84 }