From a440d6ddf402e8f9277f18a157bb8549e9aafbc8 Mon Sep 17 00:00:00 2001 From: Valentin Lorentz Date: Tue, 26 Aug 2014 13:59:24 +0200 Subject: [PATCH] NickAuth & User: Fix nick auth + gpg auth when secure flag is on. Closes GH-825. --- plugins/NickAuth/plugin.py | 7 ++++++- plugins/User/plugin.py | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/plugins/NickAuth/plugin.py b/plugins/NickAuth/plugin.py index d2bbabd5b..ab8dada76 100644 --- a/plugins/NickAuth/plugin.py +++ b/plugins/NickAuth/plugin.py @@ -161,7 +161,12 @@ class NickAuth(callbacks.Plugin): if not user: user = ircdb.users.getUserFromNick(irc.network, theirnick) if user: - user.addAuth(prefix) + try: + user.addAuth(prefix) + except ValueError: + irc.error(_('Your secure flag is true and your hostmask ' + 'doesn\'t match any of your known hostmasks.'), + Raise=True) ircdb.users.setUser(user, flush=False) irc.reply(_('You are now authenticated as %s.') % user.name) else: diff --git a/plugins/User/plugin.py b/plugins/User/plugin.py index 5978026eb..f18f1440b 100644 --- a/plugins/User/plugin.py +++ b/plugins/User/plugin.py @@ -522,7 +522,12 @@ class User(callbacks.Plugin): found = False for (id, user) in ircdb.users.items(): if keyid in [x[-len(keyid):] for x in user.gpgkeys]: - user.addAuth(msg.prefix) + try: + user.addAuth(msg.prefix) + except ValueError: + irc.error(_('Your secure flag is true and your ' + 'hostmask doesn\'t match any of your ' + 'known hostmasks.'), Raise=True) ircdb.users.setUser(user, flush=False) irc.reply(_('You are now authenticated as %s.') % user.name)