From cc164af33b20145d8d34562db88d9391a094b37e Mon Sep 17 00:00:00 2001 From: Tony Young Date: Fri, 21 Mar 2014 10:36:22 +1100 Subject: [PATCH 1/3] Fix _whois_info lookup. I am doing this through the web so it will probably be broken --- pydle/features/tls.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pydle/features/tls.py b/pydle/features/tls.py index 8b80c1c..f2a08cd 100644 --- a/pydle/features/tls.py +++ b/pydle/features/tls.py @@ -64,7 +64,7 @@ class TLSSupport(rfc1459.RFC1459Support): future = super().whois(nickname) # Add field that determines if the target user is connected over TLS. - if nickname in self._whois_info['whois']: + if nickname in self._whois_info: self._whois_info[nickname].setdefault('secure', False) return future @@ -96,7 +96,7 @@ class TLSSupport(rfc1459.RFC1459Support): 'secure': True } - if nickname in self._pending['whois']: + if nickname in self._whois_info: self._whois_info[nickname].update(info) def on_raw_691(self, message): From d5743181d1376ee3a19970527491d3e6e7652c2a Mon Sep 17 00:00:00 2001 From: Tony Young Date: Fri, 21 Mar 2014 12:37:06 +1100 Subject: [PATCH 2/3] Don't run _create_user if the nickname is a server. --- pydle/features/account.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pydle/features/account.py b/pydle/features/account.py index e16b7e7..537271e 100644 --- a/pydle/features/account.py +++ b/pydle/features/account.py @@ -7,6 +7,10 @@ class AccountSupport(rfc1459.RFC1459Support): ## Internal. def _create_user(self, nickname): + # Servers aren't users here, either! + if "." in nickname: + return + super()._create_user(nickname) self.users[nickname].update({ 'account': None, From 3c9777dd48faf4d1e4244d388aa8d6b008543863 Mon Sep 17 00:00:00 2001 From: Tony Young Date: Fri, 21 Mar 2014 12:39:07 +1100 Subject: [PATCH 3/3] Add default value for nickname in _format_user_mask. --- pydle/client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pydle/client.py b/pydle/client.py index b11a4f7..1ffdc3c 100644 --- a/pydle/client.py +++ b/pydle/client.py @@ -226,7 +226,7 @@ class BasicClient: raise NotImplementedError() def _format_user_mask(self, nickname): - user = self.users.get(nickname, { "username": "*", "hostname": "*" }) + user = self.users.get(nickname, { "nickname": nickname, "username": "*", "hostname": "*" }) return self._format_host_mask(user['nickname'], user['username'] or '*', user['hostname'] or '*') def _format_host_mask(self, nick, user, host):