Commit Graph

9640 Commits

Author SHA1 Message Date
Daniel Folkinshteyn
18ec61842c Secure some more commands which take a regexp from untrusted user input.
Namely todo.search, note.search, dunno.search.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 15:06:43 -04:00
Daniel Folkinshteyn
ac500b059a String: set default re subprocess timeout to 0.1, since that should be quite enough.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 14:56:30 -04:00
Daniel Folkinshteyn
9356d0734f Misc: fix potential ddos when misc.last command is fed a specially-crafted regexp.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 14:56:11 -04:00
Daniel Folkinshteyn
72c5c8ec09 String: fix it up to work with the previously committed enhancement for subprocess timeout.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 14:47:16 -04:00
Valentin Lorentz
3a78300971 Add support for authentication scheme.
This commit closes http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=690879
2012-10-20 20:23:32 +02:00
Valentin Lorentz
86d590c8c8 FAQ: Add the entry about @later tell. 2012-10-19 19:09:30 +00:00
Valentin Lorentz
a565b7f7d7 MessageParser: Add support for global triggers. 2012-10-18 19:31:08 +02:00
Valentin Lorentz
d3da0c2efc commands.py: Add 'channelOrGlobal' converter. 2012-10-18 19:30:35 +02:00
Daniel Folkinshteyn
6a9af819a3 src/commands.py: make subprocesses raise an error on timeout, rather than return a string
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:14:15 -04:00
Daniel Folkinshteyn
f310350335 Web: add 'timeout' config for web fetch, default 5 sec.
Otherwise, when a site would take a long time to respond, the thread would hang for quite a while.

also needed to mod src/utils/web.py to take the timeout arg.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:10:56 -04:00
Daniel Folkinshteyn
ce9891368b Seen: fix tests so they pass. fix seen command so it properly accepts nick wildcards.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:09:34 -04:00
Valentin Lorentz
8ded033410 Seen: Fix save Seen.any.db. (thanks to beo_ for the repport and the test)
Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:06:49 -04:00
Daniel Folkinshteyn
854e086fa7 Topic: get shouldn't require capabilities, since it's a read-only operation.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:04:35 -04:00
Daniel Folkinshteyn
02b9431536 BadWords: improve help for requireWordBoundaries config.
Make a note that the plugin requires restart or the words set updating,
for changes to this setting to take effect.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:01:39 -04:00
Daniel Folkinshteyn
011d4dd676 Badwords: add plugin docstring, and fix/standardize some method docstrings.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:00:08 -04:00
Daniel Folkinshteyn
a5ec33adeb Make plugin loading/reloading case-insensitive.
Since load/reload was the only place where case mattered for plugins, and it tripped up
a lot of new users, this should be a nice bit of usability improvement.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:51:00 -04:00
Daniel Folkinshteyn
92be7c255f String: make levenshtein command threaded, since it can take a nontrivial amount of time with longer inputs.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:49:15 -04:00
Daniel Folkinshteyn
34e5aedc45 String: make re timeout configurable.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:47:32 -04:00
Daniel Folkinshteyn
9fc7ec28b4 Fix error handling for subprocesses.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:44:04 -04:00
Daniel Folkinshteyn
7504c646b7 Status.processes: add output of currently active processes.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:35:26 -04:00
Daniel Folkinshteyn
141b120a9c commands.process: return immediately when terminating process, without having to deal with the queue.
otherwise, we have to block for $smalldelay between putting and getting the item, since queue putting is not instantaneous
and sometimes we would get 'nothing returned' instead of the timeout message.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:32:54 -04:00
Daniel Folkinshteyn
7f4a1be9f9 Status: add 'processes' command, the multiprocessing equivalent of the threads command.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:32:17 -04:00
Daniel Folkinshteyn
7f98aa7105 Some improvements to the commands.process function - better process naming and informational output.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:28:41 -04:00
Daniel Folkinshteyn
a2985c37d6 Create a commands.process function which runs a function inside a separate process.
This is the only way to limit the execution time of a possibly long-running python statement.
Use this on String.re, due to the possibility of pathologically long re matching in python.
This allows us to remove the 'trusted-only' restriction on string.re.
In the future, this should probably be used in other places that take user-supplied regexps,
such as 'misc last --regexp', for example, as well as other potentially long-running tasks
that can block the bot.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:19:34 -04:00
Daniel Folkinshteyn
d691a91636 Topic: fix bug in invalid number error output.
Previously, when giving an invalid positive number, error would reference number-1 as being invalid.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 20:52:27 -04:00
Daniel Folkinshteyn
84b878b10e Filter: catch invalid input for unbinary command.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 20:51:13 -04:00
Daniel Folkinshteyn
7feb50685a Filter: add unbinary command, as counterpart to binary command.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 20:47:30 -04:00
Daniel Folkinshteyn
6025f7364c core: force inet_aton argument to string to prevent occasional error on reconnect.
it /should/ always be a string anyway, but sometimes things break with
a TypeError that it is an int instead of the expected string and hangs
up the bot.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-14 12:21:56 -04:00
James McCoy
aa4071fa68 RSS: Remove local/feedparser and add it to install_requires
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-14 12:13:00 -04:00
James McCoy
450be69710 Bootstrap setuptools if it isn't available.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-14 12:12:23 -04:00
Valentin Lorentz
4d1a7ea32a Display more explicit error if python-sqlite3 is not installed. 2012-10-13 08:54:33 +00:00
Valentin Lorentz
5ebbf2d516 Merge branch 'debian' into testing
Conflicts:
	setup.py
2012-10-12 19:56:43 +02:00
Valentin Lorentz
6b881d6509 Socket driver: Apply supybot.drivers.poll as soon as modified (do not require reconnect). 2012-10-10 19:39:28 +02:00
Valentin Lorentz
aff8cd30ad Merge pull request #419 from Mkaysi/automode-l10n-fi
AutoMode: update l10n-fi.
2012-10-07 09:00:06 -07:00
Mika Suomalainen
0098fa576e AutoMode: update l10n-fi. 2012-10-07 18:58:26 +03:00
Valentin Lorentz
b132e44418 Merge pull request #418 from Mkaysi/alias-l10n-fi
Alias: update l10n-fi.
2012-10-07 08:54:51 -07:00
Valentin Lorentz
514f26fc33 Merge pull request #417 from Mkaysi/google-l10n-fi
Google: update l10n-fi.
2012-10-07 08:54:38 -07:00
Valentin Lorentz
eca08f7ed0 Merge pull request #416 from Mkaysi/channellogger-l10n-fi
ChannelLogger: update l10n-fi
2012-10-07 08:54:25 -07:00
Mika Suomalainen
a80569c0ee AutoMode: update messages.pot 2012-10-07 18:54:21 +03:00
Mika Suomalainen
d8595bee85 Alias: update messages.pot
I forgot to commit it again.
2012-10-07 18:52:59 +03:00
Mika Suomalainen
9e2e6bf8f8 Alias: update l10n-fi. 2012-10-07 18:51:47 +03:00
Mika Suomalainen
bbb7a0cc3b Google: update l10n-fi. 2012-10-07 18:46:42 +03:00
Mika Suomalainen
9bc69cccaf Google: update messages.pot 2012-10-07 18:43:39 +03:00
Mika Suomalainen
e9923dbf38 ChannelLogger: update l10n-fi. 2012-10-07 18:39:45 +03:00
Mika Suomalainen
8e0100ac47 ChannelLogger: update messages.pot 2012-10-07 18:37:47 +03:00
Valentin Lorentz
707b2d77e6 Merge pull request #415 from Mkaysi/shrinkurl-l10n-fi
ShrinkUrl: update l10n-fi.
2012-10-07 08:37:42 -07:00
Valentin Lorentz
27a40bd82f Merge pull request #414 from Mkaysi/channel-l10n-fi
Channel: update l10n-fi & messages.pot
2012-10-07 08:37:31 -07:00
Mika Suomalainen
f584c10bc7 ShrinkUrl: commit updated messages.pot 2012-10-07 18:35:43 +03:00
Mika Suomalainen
1b85284100 ShrinkUrl: update l10n-fi. 2012-10-07 18:34:02 +03:00
Mika Suomalainen
38c512f3e1 Channel: update l10n-fi. 2012-10-07 18:12:56 +03:00