Implement authentication checking on connection

This commit is contained in:
Mark Veidemanis 2020-10-28 22:48:27 +00:00
parent 812db95995
commit 69fbe180f1
2 changed files with 13 additions and 5 deletions

View File

@ -2,12 +2,15 @@
"_": {
"register": true,
"entity": "NickServ",
"email": "{nickname}.irc@domain.com",
"email": "{nickname}@domain.com",
"register": "REGISTER {password} {email}",
"confirm": "CONFIRM {token}",
"check": true,
"ping": true,
"pingmsg": "STATUS {nickname}",
"checktype": "mode",
"checkmode": "r",
"checkmsg": "Password accepted - you are now recognized."
"checkmsg": "Password accepted - you are now recognized.",
"checkmsg2": "You are logged in as"
}
}

View File

@ -81,9 +81,14 @@ def registerTest(c):
inst = selectInst(c["net"])
if inst["check"] == False:
return
if inst["checktype"] == "msg":
if c["type"] == "query":
if inst["checkmsg"] in c["msg"] and c["nick"] == inst["entity"]:
if "msg" in c.keys():
if inst["checktype"] == "msg":
if c["type"] == "query":
if inst["checkmsg"] in c["msg"] and c["nick"] == inst["entity"]:
confirmRegistration(c["net"], c["num"])
return
if inst["ping"]:
if inst["checkmsg2"] in c["msg"] and c["nick"] == inst["entity"]:
confirmRegistration(c["net"], c["num"])
return
elif inst["checktype"] == "mode":