summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/config.c2
-rw-r--r--src/core/ns_register.c5
2 files changed, 7 insertions, 0 deletions
diff --git a/src/config.c b/src/config.c
index 3efdc5555..d8e05a157 100644
--- a/src/config.c
+++ b/src/config.c
@@ -145,6 +145,7 @@ int NSDefMemoReceive;
int NSDefFlags;
int NSDefLanguage;
int NSRegDelay;
+int NSResendDelay;
int NSExpire;
int NSRExpire;
int NSForceEmail;
@@ -555,6 +556,7 @@ Directive directives[] = {
{"NSMaxAliases", {{PARAM_INT, PARAM_RELOAD, &NSMaxAliases}}},
{"NSNoGroupChange", {{PARAM_SET, PARAM_RELOAD, &NSNoGroupChange}}},
{"NSRegDelay", {{PARAM_TIME, PARAM_RELOAD, &NSRegDelay}}},
+ {"NSResendDelay", {{PARAM_TIME, PARAM_RELOAD, &NSResendDelay}}},
{"NSReleaseTimeout", {{PARAM_TIME, PARAM_RELOAD, &NSReleaseTimeout}}},
{"NSSecureAdmins", {{PARAM_SET, PARAM_RELOAD, &NSSecureAdmins}}},
{"NSStrictPrivileges",
diff --git a/src/core/ns_register.c b/src/core/ns_register.c
index 4eb26c625..f2b3f1ad8 100644
--- a/src/core/ns_register.c
+++ b/src/core/ns_register.c
@@ -449,6 +449,11 @@ int do_resend(User * u)
NickRequest *nr = NULL;
if (NSEmailReg) {
if ((nr = findrequestnick(u->nick))) {
+ if (time(NULL) < nr->lastmail + NSResendDelay) {
+ return MOD_CONT;
+ } else {
+ nr->lastmail = time(NULL);
+ }
if (do_sendregmail(u, nr) == 0) {
notice_lang(s_NickServ, u, NICK_REG_RESENT, nr->email);
alog("%s: re-sent registration verification code for %s to %s", s_NickServ, nr->nick, nr->email);