summaryrefslogtreecommitdiffstats
path: root/ldap/servers/plugins/replication/repl_globals.c
blob: 4a1e6ac630fc867244f868342b5c355dacf525d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
/** BEGIN COPYRIGHT BLOCK
 * Copyright (C) 2001 Sun Microsystems, Inc. Used by permission.
 * Copyright (C) 2005 Red Hat, Inc.
 * All rights reserved.
 * END COPYRIGHT BLOCK **/
 
#include "nspr.h"
#include "repl.h"

char *repl_plugin_name = REPL_PLUGIN_NAME;
char *repl_plugin_name_cl = REPL_PLUGIN_NAME " - changelog program";

/* String constants (no need to change these for I18N) */

#define	CHANGETYPE_ADD		"add"
#define	CHANGETYPE_DELETE	"delete"
#define	CHANGETYPE_MODIFY	"modify"
#define	CHANGETYPE_MODRDN	"modrdn"
#define	CHANGETYPE_MODDN	"moddn"
#define	ATTR_CHANGENUMBER	"changenumber"
#define	ATTR_TARGETDN		"targetdn"
#define	ATTR_CHANGETYPE		"changetype"
#define	ATTR_NEWRDN		"newrdn"
#define	ATTR_DELETEOLDRDN	"deleteoldrdn"
#define	ATTR_CHANGES		"changes"
#define	ATTR_NEWSUPERIOR	"newsuperior"
#define	ATTR_CHANGETIME		"changetime"
#define	ATTR_DATAVERSION	"dataVersion"
#define ATTR_CSN			"csn"
#define	TYPE_COPYINGFROM	"copyingFrom"
#define	TYPE_COPIEDFROM		"copiedFrom"
#define	FILTER_COPYINGFROM	"copyingFrom=*"
#define	FILTER_COPIEDFROM	"copiedFrom=*"
#define	FILTER_OBJECTCLASS	"objectclass=*"


char	*changetype_add		= CHANGETYPE_ADD;
char	*changetype_delete	= CHANGETYPE_DELETE;
char	*changetype_modify	= CHANGETYPE_MODIFY;
char	*changetype_modrdn	= CHANGETYPE_MODRDN;
char	*changetype_moddn	= CHANGETYPE_MODDN;
char	*attr_changenumber	= ATTR_CHANGENUMBER;
char	*attr_targetdn		= ATTR_TARGETDN;
char	*attr_changetype	= ATTR_CHANGETYPE;
char	*attr_newrdn		= ATTR_NEWRDN;
char	*attr_deleteoldrdn	= ATTR_DELETEOLDRDN;
char	*attr_changes		= ATTR_CHANGES;
char	*attr_newsuperior	= ATTR_NEWSUPERIOR;
char	*attr_changetime	= ATTR_CHANGETIME;
char	*attr_dataversion	= ATTR_DATAVERSION;
char	*attr_csn			= ATTR_CSN;
char	*type_copyingFrom	= TYPE_COPYINGFROM;
char	*type_copiedFrom	= TYPE_COPIEDFROM;
char	*filter_copyingFrom	= FILTER_COPYINGFROM;
char	*filter_copiedFrom	= FILTER_COPIEDFROM;
char	*filter_objectclass	= FILTER_OBJECTCLASS;
char	*type_cn		= "cn";
char	*type_objectclass	= "objectclass";

/* Names for replica attributes */
const char *attr_replicaId = "nsDS5ReplicaId";
const char *attr_replicaRoot = "nsDS5ReplicaRoot";
const char *attr_replicaType = "nsDS5ReplicaType";
const char *attr_replicaBindDn = "nsDS5ReplicaBindDn";
const char *attr_state = "nsState";
const char *attr_flags = "nsds5Flags";
const char *attr_replicaName = "nsds5ReplicaName";
const char *attr_replicaReferral = "nsds5ReplicaReferral";
const char *type_ruvElement = "nsds50ruv";
const char *type_replicaPurgeDelay = "nsds5ReplicaPurgeDelay";
const char *type_replicaChangeCount = "nsds5ReplicaChangeCount";
const char *type_replicaTombstonePurgeInterval = "nsds5ReplicaTombstonePurgeInterval";
const char *type_replicaLegacyConsumer = "nsds5ReplicaLegacyConsumer";
const char *type_ruvElementUpdatetime = "nsruvReplicaLastModified";

/* Attribute names for replication agreement attributes */
const char *type_nsds5ReplicaHost = "nsds5ReplicaHost";
const char *type_nsds5ReplicaPort = "nsds5ReplicaPort";
const char *type_nsds5TransportInfo = "nsds5ReplicaTransportInfo";
const char *type_nsds5ReplicaBindDN = "nsds5ReplicaBindDN";
const char *type_nsds5ReplicaCredentials = "nsds5ReplicaCredentials";
const char *type_nsds5ReplicaBindMethod = "nsds5ReplicaBindMethod";
const char *type_nsds5ReplicaRoot = "nsds5ReplicaRoot";
const char *type_nsds5ReplicatedAttributeList = "nsds5ReplicatedAttributeList";
const char *type_nsds5ReplicaUpdateSchedule = "nsds5ReplicaUpdateSchedule";
const char *type_nsds5ReplicaInitialize = "nsds5BeginReplicaRefresh";
const char *type_nsds5ReplicaTimeout = "nsds5ReplicaTimeout";
const char *type_nsds5ReplicaBusyWaitTime = "nsds5ReplicaBusyWaitTime";
const char *type_nsds5ReplicaSessionPauseTime = "nsds5ReplicaSessionPauseTime";

/* To Allow Consumer Initialisation when adding an agreement - */
const char *type_nsds5BeginReplicaRefresh = "nsds5BeginReplicaRefresh";

static int repl_active_threads;

int
decrement_repl_active_threads()
{
    PR_AtomicIncrement(&repl_active_threads);
	return repl_active_threads;
}

int
increment_repl_active_threads()
{
	PR_AtomicDecrement(&repl_active_threads);
    return repl_active_threads;
}