summaryrefslogtreecommitdiffstats
path: root/irc.py
diff options
context:
space:
mode:
authorSean B. Palmer <sbp@aldebaran.local>2011-09-05 17:46:17 +0100
committerSean B. Palmer <sbp@aldebaran.local>2011-09-05 17:46:17 +0100
commit2d3009ccb123bb34bf0d8b8b516a15c05240bf03 (patch)
tree28029457224da9cd91187e17f8b90cff5cb2de57 /irc.py
parent66edd833726d0a14400df65311999b1496b9f8cb (diff)
downloadbot-2d3009ccb123bb34bf0d8b8b516a15c05240bf03.tar.gz
bot-2d3009ccb123bb34bf0d8b8b516a15c05240bf03.tar.bz2
bot-2d3009ccb123bb34bf0d8b8b516a15c05240bf03.zip
Attempt to patch a possible message injection hole.
Diffstat (limited to 'irc.py')
-rwxr-xr-xirc.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/irc.py b/irc.py
index a16c61b..7a4bed4 100755
--- a/irc.py
+++ b/irc.py
@@ -42,6 +42,9 @@ class Bot(asynchat.async_chat):
import threading
self.sending = threading.RLock()
+ # def push(self, *args, **kargs):
+ # asynchat.async_chat.push(self, *args, **kargs)
+
def __write(self, args, text=None):
# print '%r %r %r' % (self, args, text)
try:
@@ -148,7 +151,10 @@ class Bot(asynchat.async_chat):
self.sending.release()
return
- self.__write(('PRIVMSG', recipient), text)
+ def safe(input):
+ input = input.replace('\n', '')
+ return input.replace('\r', '')
+ self.__write(('PRIVMSG', safe(recipient)), safe(text))
self.stack.append((time.time(), text))
self.stack = self.stack[-10:]