Reset negative pass status when requesting recheck

This commit is contained in:
Mark Veidemanis 2022-08-14 23:58:35 +01:00
parent 6cdadd23a0
commit 153d3dd847
2 changed files with 7 additions and 4 deletions

View File

@ -239,11 +239,11 @@ class API(object):
return dumps({"success": False, "reason": f"failed to get instances for {net_name}."})
if func == "recheckauth":
for conn in conns:
conn.regPing()
conn.regPing(reset=True)
elif func == "resetauth":
for conn in conns:
conn.authenticated = False
conn.regPing()
conn.regPing(reset=True)
elif func == "register":
for conn in conns:
regproc.registerAccount(conn.net, conn.num)

View File

@ -627,7 +627,7 @@ class IRCBot(IRCClient):
# End of Twisted hackery
def regPing(self, negativepass=None):
def regPing(self, negativepass=None, reset=True):
if self.authenticated:
return
if not regproc.needToAuth(self.net):
@ -637,6 +637,9 @@ class IRCBot(IRCClient):
if not sinst:
error(f"regPing() {self.net}: registration ping failed for {self.num}")
return
if reset:
self._negativePass = None
if self._negativePass is not True:
if negativepass is False:
self._negativePass = False
@ -652,7 +655,7 @@ class IRCBot(IRCClient):
debug(f"regPing() {self.net}: sent ping '{sinst['pingmsg']}' to {sinst['entity']} - {self.num}")
return
else:
debug("regPing() {self.net}: negative registration check - {self.num}")
debug(f"regPing() {self.net}: negative registration check - {self.num}")
return
if sinst["check"]: