summaryrefslogtreecommitdiff
path: root/include/services.h
diff options
context:
space:
mode:
authorgeniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2005-03-14 18:01:08 +0000
committergeniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2005-03-14 18:01:08 +0000
commitdcfcd9302fe67bfe1aeb67db4203867d173d3073 (patch)
tree8220b8762f7eeedad32da4325be023a1fafd9c54 /include/services.h
parent8c95c8f4904d3c1fd5e173f1d52356c921faf83d (diff)
BUILD : 1.7.8 (619) BUGS : NOTES : Fixed the recording of server sync state more reliable, which fixes a bug where servers which did not report bursts would always remain in burst-mode internally
git-svn-id: svn://svn.anope.org/anope/trunk@619 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@467 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'include/services.h')
-rw-r--r--include/services.h23
1 files changed, 15 insertions, 8 deletions
diff --git a/include/services.h b/include/services.h
index 51b9d3075..09a2682ca 100644
--- a/include/services.h
+++ b/include/services.h
@@ -335,6 +335,7 @@ struct ircdvars_ {
int supporthelper; /* +h helper umodes */
int p10; /* ircd is P10 */
char *nickchars; /* character set */
+ int sync; /* reports sync state */
};
struct ircdcapab_ {
@@ -750,17 +751,23 @@ struct csmodeutil_ {
/* Server data */
+typedef enum {
+ SSYNC_UNKNOWN = 0, /* We can't get the sync state */
+ SSYNC_IN_PROGRESS = 1, /* Sync is currently in progress */
+ SSYNC_DONE = 2 /* We're in sync */
+} SyncState;
+
struct server_ {
Server *next, *prev;
- char *name; /* Server name */
- uint16 hops; /* Hops between services and server */
- char *desc; /* Server description */
- uint16 flags; /* Some info flags, as defined below */
- char *suid; /* Server Univeral ID */
- int sync; /* Whether is synced or not */
-
- Server *links; /* Linked list head for linked servers */
+ char *name; /* Server name */
+ uint16 hops; /* Hops between services and server */
+ char *desc; /* Server description */
+ uint16 flags; /* Some info flags, as defined below */
+ char *suid; /* Server Univeral ID */
+ SyncState sync; /* Server sync state (see above) */
+
+ Server *links; /* Linked list head for linked servers */
Server *uplink; /* Server which pretends to be the uplink */
};