summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAdam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864>2010-01-03 23:53:28 +0000
committerAdam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864>2010-01-03 23:53:28 +0000
commitabc8b4aa4e44b84c9455f93e49113408144d2f0b (patch)
treef518fc173c80b3e09d3b913b5e10e736b6b9c10c /src
parent60c7b5b10f5d741221030078f663558a067e3eb0 (diff)
Mark users as unrecognized on Inspircd 1.2 if no/invalid metadata is recieved for them before the next uid/eob
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/stable@2731 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src')
-rw-r--r--src/protocol/inspircd12.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/protocol/inspircd12.c b/src/protocol/inspircd12.c
index 1f1b63290..70d8f2b73 100644
--- a/src/protocol/inspircd12.c
+++ b/src/protocol/inspircd12.c
@@ -1673,6 +1673,8 @@ int anope_event_uid(char *source, int ac, char **av)
if (user) {
if (debug)
alog("debug: User %s had +r but received no account info.", user->nick);
+ if (user->na)
+ user->na->status &= ~NS_RECOGNIZED;
validate_user(user);
common_svsmode(user, "-r", NULL);
}
@@ -1756,6 +1758,7 @@ int anope_event_metadata(char *source, int ac, char **av)
* Invalidate the recognition. */
if (debug)
alog("debug: User %s had +r but did not receive matching account info.", u->nick);
+ u->na->status &= ~NS_RECOGNIZED;
common_svsmode(u, "-r", NULL);
validate_user(u);
}
@@ -1779,6 +1782,8 @@ int anope_event_eob(char *source, int ac, char **av)
/* The burst is complete.. check if there was a user that got recognized and still needs to be invalidated.*/
if (u) {
+ if (u->na)
+ u->na->status &= ~NS_RECOGNIZED;
common_svsmode(u, "-r", NULL);
validate_user(u);
}