Commit Graph

357 Commits

Author SHA1 Message Date
nyuszika7h
32e3be3dac src/irclib.py: remove some errors 2014-07-26 11:52:34 +02:00
nyuszika7h
100ff648be src/irclib.py: Further improvements to SASL and a few other minor things 2014-05-24 17:25:32 +02:00
nyuszika7h
414249c9ac src/irclib.py: Delay sending SASL authstring until given green light
That means wait until receiving 'AUTHENTICATE +' from the server, which
means the mechanism is supported and we can proceed to send the
authstring.

It generally works anyway, but it's better to follow the standards, plus
old versions of elemental-ircd may crash if we don't do this.
2014-05-24 15:57:27 +02:00
Valentin Lorentz
9d084e2e70 Allow network-specific username and ident. Closes GH-589. 2014-05-08 08:33:01 +00:00
nyuszika7h
822e6449f9 irclib: Add support for additional SASL numerics 2014-04-10 15:03:20 +02:00
nyuszika7h
6be8204805 irclib: Remove some useless SASL debug messages 2014-04-10 14:57:20 +02:00
nyuszika7h
14e51f6193 irclib: Make SASL messages easier to understand
The logs are meant to be understandable by humans, and not everyone
might know AUTHENTICATE is a SASL command.

[ci skip]
2014-04-10 14:53:17 +02:00
Valentin Lorentz
0d4784cf4a Fix compatibility with Python 2.6 (does not support the set syntax). 2014-01-26 21:49:28 +01:00
Valentin Lorentz
35a62b4e77 Continue accelerating the 2to3 step (remove fix_ws_comma, fix_xreadlines, and fix_zip). 2014-01-21 10:40:18 +01:00
Valentin Lorentz
ca419f6485 Continue accelerating the 2to3 step (remove fix_reduce, fix_renames, fix_repr, fix_set_literal, fix_standarderror, fix_sys_exc, fix_throw, and fix_tuple_params). 2014-01-20 16:04:53 +01:00
Valentin Lorentz
bb7db3ab21 Continue accelerating the 2to3 step (remove fix_except). 2014-01-20 15:49:15 +01:00
Valentin Lorentz
529b8f8d99 Continue accelerating the 2to3 step (remove fix_nonzero, fix_operator, and fix_paren). 2014-01-20 15:19:06 +01:00
Valentin Lorentz
677f7fdd6f irclib: Prevent crash if 324 or 329 is not received after any other post-join messages. 2013-10-10 14:10:06 +00:00
Valentin Lorentz
40675ffdfa Merge remote-tracking branch 'supybot/master' into testing
Conflicts:
	plugins/Admin/plugin.py
	plugins/BadWords/config.py
	plugins/Filter/plugin.py
	plugins/Google/plugin.py
	plugins/Math/plugin.py
	plugins/Misc/plugin.py
	plugins/Note/plugin.py
	plugins/RSS/plugin.py
	plugins/Seen/test.py
	plugins/ShrinkUrl/config.py
	plugins/ShrinkUrl/plugin.py
	plugins/ShrinkUrl/test.py
	plugins/Status/plugin.py
	plugins/String/config.py
	plugins/String/plugin.py
	plugins/Time/plugin.py
	plugins/Todo/plugin.py
	plugins/Web/plugin.py
	plugins/__init__.py
	scripts/supybot-botchk
	setup.py
	src/__init__.py
	src/callbacks.py
	src/commands.py
	src/conf.py
	src/drivers/Socket.py
	src/ircdb.py
	src/irclib.py
	src/ircutils.py
	src/questions.py
	src/registry.py
	src/schedule.py
	src/test.py
	src/utils/file.py
	src/utils/gen.py
	src/utils/net.py
	src/utils/web.py
	src/world.py
2013-08-24 11:28:29 +02:00
Valentin Lorentz
9bfec720f5 Fix traceback if bot is kicked immediately after joining a channel. 2013-07-13 12:01:53 +02:00
Milos Petkovic
be6116f958 Reset network uptime on reconnection as well 2013-06-17 08:09:16 +02:00
Valentin Lorentz
1090c4623f Factoids: Add supybot.plugins.Factoids.requireVoice. Closes GH-378. 2013-05-17 17:47:43 +02:00
Valentin Lorentz
856a65c9f6 Add irc.state.ircd. 2013-03-31 21:22:59 +02:00
Valentin Lorentz
d714909576 Use non-sexist language in strings and comments. 2013-03-08 20:34:31 +01:00
nyuszika7h
e491e14bc3 Final fix for SASL and py3k 2013-02-03 18:50:20 +01:00
nyuszika7h
4170a873b2 Fix previous commit (yet again) 2013-02-03 15:58:45 +01:00
nyuszika7h
66e46e5143 Fix previous commit (again) 2013-02-03 15:30:28 +01:00
nyuszika7h
4b10ea3329 Fix previous commit 2013-02-03 15:14:03 +01:00
nyuszika7h
f1198fb4e8 irclib.py: Fix SASL on py3k 2013-02-03 15:08:36 +01:00
Valentin Lorentz
fa36e48075 core: Document irclib.Irc.addCallback. 2013-02-01 20:38:53 +01:00
Valentin Lorentz
3dba9088b0 Merge remote-tracking branch 'supybot/master' into testing
Conflicts:
	INSTALL
	plugins/ChannelLogger/README.txt
	plugins/ChannelStats/README.txt
	plugins/Google/plugin.py
	plugins/Google/test.py
	plugins/Plugin/test.py
	plugins/Web/test.py
	setup.py
	src/callbacks.py
	src/ircdb.py
	src/irclib.py
	src/utils/str.py
	test/test_irclib.py
2013-01-01 21:11:24 +01:00
Valentin Lorentz
79eeb8eb95 Revert "irclib: Apply changes to supybot.protocols.irc.maxHistoryLength immediately."
This reverts commit 1d2eefe880.

IrcState instances are created more than five times a second! Imagine how much
memory is used (hint: 300MB five minutes after startup).
We should first try to reduce this amount.
2012-12-27 16:06:01 +00:00
Valentin Lorentz
1d2eefe880 irclib: Apply changes to supybot.protocols.irc.maxHistoryLength immediately. 2012-12-27 12:24:24 +00:00
Valentin Lorentz
84148988b3 Fix tests broken by 6a06ca991. 2012-12-26 15:37:52 +01:00
Valentin Lorentz
6a06ca9911 core: Initialize list of bans when joining a channel. 2012-12-23 17:19:25 +01:00
James McCoy
cef93a6cfd Use relative imports for all packages under the supybot namespace
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-17 22:12:11 -04:00
James McCoy
232aa86a1e Merge branch 'maint/0.83.4' 2012-09-01 09:13:52 -04:00
James McCoy
c74e8f35ab Fix regression in parsing 004 messages
This was introduced in commit 4232e40e26

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-08-26 12:59:41 -04:00
Valentin Lorentz
d2ab53cd19 Fix parsing of 004 message. (Broken in d9531d2d). 2012-08-25 20:17:15 +02:00
Valentin Lorentz
45bf9db03c Merge branch 'py3k-backport' into testing
This branch provides support of Python 3 via 2to3 (without dropping
Python 2 support).
2012-08-08 21:46:29 +02:00
Valentin Lorentz
e3d170d9fe Add support for network-specific umodes. 2012-08-06 15:59:00 +02:00
Valentin Lorentz
e23fa611d6 Call other.__eq__ in irclib.Irc.__eq__ instead of using the == comparator.
Here, this operator is not reflexive, and Python 3 calls the second members resulting in a stack overflow.
2012-08-04 13:25:47 +02:00
Valentin Lorentz
1cb657ddb2 Import imap directly from itertools instead of utils.iter. 2012-08-04 13:21:37 +02:00
Digital-Lemon
51ef07caf5 Added Irc objects creation time 2012-06-30 02:32:49 +02:00
James McCoy
438b50dccc irclib: Modes aren't case insenstive
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-06-06 13:38:38 +02:00
James McCoy
6d1b957e07 irclib: Modes aren't case insenstive
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-06-06 06:00:48 -04:00
Valentin Lorentz
e92b8a62f5 Merge supybot's master (will make future merges easier)
Conflicts:
	plugins/Misc/plugin.py
	plugins/String/plugin.py
	src/drivers/Socket.py
	src/irclib.py
	src/ircutils.py
2012-04-03 16:55:29 +02:00
nyuszika7h
c656abf096 irclib.py: Add network name to 'Outgoing message' debug log message 2011-12-28 11:37:10 +01:00
James McCoy
d9531d2d29 Fix parsing of 004 message for supported umodes/chanmodes
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-14 01:31:28 +08:00
James McCoy
b8c43dc5cc Perform all received* IrcMsg tagging in one spot.
This also fixes a long-standing failing Misc test since it was relying on the
receivedAt tag.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-13 18:06:26 +01:00
James McCoy
ca23cbb774 Merge branch 'maint/0.83.4' 2011-12-06 01:18:18 -05:00
James McCoy
4ddfae427f Perform all received* IrcMsg tagging in one spot.
This also fixes a long-standing failing Misc test since it was relying on the
receivedAt tag.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-05 23:52:38 -05:00
James McCoy
8b73f78b3e Merge branch 'maint/0.83.4'
Conflicts:
	plugins/Misc/plugin.py
	src/ircutils.py

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-13 15:26:19 -05:00
James McCoy
4833976294 One last fix to umode filtering.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-13 15:10:16 -05:00
Valentin Lorentz
b5187ea31d Fix commit b23480b9 again. 2011-11-12 00:39:08 +01:00
Valentin Lorentz
efd158da58 Fix commit b23480b9. Closes GH-267. 2011-11-11 23:50:55 +01:00
Valentin Lorentz
348d1bd99c Fix typo (lamda => lambda). 2011-11-11 19:56:20 +01:00
James McCoy
d6336421e0 Fix IRC.do376's handling of supported state
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-07 05:58:48 -05:00
James McCoy
4232e40e26 Fix parsing of 004 message for supported umodes/chanmodes
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-07 05:58:27 -05:00
James McCoy
3bfda3cc7a Fix filtering of unsupported umodes
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-06 22:20:55 -05:00
Valentin Lorentz
74b98f5c2a Merge remote-tracking branch 'supybot/master' into testing 2011-10-31 22:07:48 +01:00
James McCoy
02c0d0ce3c Merge branch 'check-umodes' 2011-10-29 17:25:57 -04:00
James McCoy
b23480b915 irclib: Filter out unsupported umodes before sending them to the server
Closes: Sf#3075891
Signed-off-by: James McCoy <vega.james@gmail.com>
2011-10-29 17:22:42 -04:00
James McCoy
c9e548bdd9 irclib: Add support for 004 messages from the server
At a minimum, the message gives us the server name, ircd version, supported
umodes, and supported channel modes.  Add the umodes and channel modes to
self.supported.

Some IRCds (e.g., hybrid and ircd-seven) have an extra arg which seems to be
the channel modes that require arguments.

Signed-off-by: James McCoy <vega.james@gmail.com>
2011-10-29 17:22:27 -04:00
Valentin Lorentz
e253fe1543 Allow network-specific nicks. Closes GH-134. 2011-10-27 12:31:37 +02:00
nyuszika7h
ca502c6814 irclib.py: Added network name to SASL authentication success/fail. 2011-09-13 19:55:01 +02:00
nyuszika7h
dcaefbdcf5 Add SASL support to core. 2011-09-13 11:07:52 +02:00
Jeremy Fincher
b774268498 Added network to debug "Incoming message" log. 2009-12-28 12:17:27 -06:00
James Vega
56ba12aa4b Add support for UltimateIRCd's ! (protected) user mode.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-23 19:20:02 -04:00
Štěpán Němec
a66034f852 Fix some typos/wordings.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-08-26 16:34:12 -04:00
Jeremy Fincher
fa9a9cb04d Ensured logging of error messages with unrecognized numeric codes. Fixes SR #1859821, but nothing can rectify freenode's idiocy completely. 2009-03-12 14:04:55 -05:00
Jeremy Fincher
9f3bc9d355 IrcCallback's super() doesn't take any args. 2009-03-11 13:37:25 -04:00
James Vega
a3e4fc5b1d Change the modeline to use softtabstop instead of tabstop. 2006-02-11 15:52:51 +00:00
Jeremy Fincher
dca3a3c099 Minor style tweak. 2006-01-12 03:57:10 +00:00
James Vega
0b83f017d9 src/irclib.py: Document the protected/channel owner patch 2005-11-30 16:02:09 +00:00
Marius Rieder
cbb5b7aaa2 protect_and_chanowner_in_unrealircd
Add protectet users (&) und the channelowner (~) used in unrealircd to the ops list.
2005-11-01 04:49:23 +00:00
Jeremy Fincher
603cab6b0a Loaded plugins during __init__ rather than do001. 2005-08-15 05:37:05 +00:00
Jeremy Fincher
27656e5fef Added a few more asserts and clarified an already existing one. 2005-08-15 05:36:23 +00:00
James Vega
a3149f0ec0 src/irclib: If the post-inFilter message differs from the pre-inFilter message, log it for debugging purposes. 2005-08-04 21:19:41 +00:00
James Vega
6f8e3d37aa src/irclib: Let's not override the name for the set type. 2005-07-10 18:27:40 +00:00
James Vega
bd31b7f596 src/irclib: Handle IRCds which use a MAXLIST-style value for the MAXBANS 005 key. 2005-06-29 14:20:54 +00:00
Jeremy Fincher
4e4c23a781 Removed the "All channels synced ..." message since it's not entirely accurate with our new JOIN ratelimiting. 2005-05-18 14:35:57 +00:00
Jeremy Fincher
9aaba996b3 Changed log message for 433 to be more accurate when a 432 is encountered. 2005-05-18 05:23:38 +00:00
Jeremy Fincher
0b848199b5 Fixed some style issues with logging calls. 2005-05-18 04:18:35 +00:00
Jeremy Fincher
1d357dd470 Some more slight tweaks to the MetaFirewall implementation and stuff. 2005-05-15 17:08:02 +00:00
Jeremy Fincher
2861b5a334 Fixed some uselessness in log.MetaFirewall and removed an attribute that shouldn't be firewalled (it was vestigial). 2005-05-15 16:50:10 +00:00
Jeremy Fincher
b48ca7ab71 Added supybot.protocols.irc.queuing.rateLimit.join, to throttle joins. 2005-04-14 01:35:35 +00:00
Jeremy Fincher
73f639b55f Changed supybot.protocols.irc.refuseToQueueDuplicateMessages to supybot.protocols.irc.queuing.duplicates. 2005-04-14 00:56:26 +00:00
Jeremy Fincher
0773aa31e5 Made Proxy Irc objects map to the same dictionary slot, so we don't need to worry about calling getRealIrc all the time. 2005-03-28 13:00:37 +00:00
James Vega
9971e991fe Fix the modelines. 2005-03-23 20:07:45 +00:00
James Vega
aefcd594df Move structures to utils/ 2005-03-12 18:01:47 +00:00
Jeremy Fincher
51637b3b00 Forgot this from the nested plugins changes. 2005-02-28 07:59:46 +00:00
James Vega
2408457221 Fix a bug with a missing argument for string formatting. 2005-02-23 16:40:21 +00:00
James Vega
90c000793d utils.gen.* functions shouldn't explicitly be called since they're all in the utils namespace. 2005-02-15 13:57:57 +00:00
Jeremy Fincher
46225641bd Changed the implementation of IrcMsgQueue a bit. 2005-02-09 05:30:14 +00:00
Jeremy Fincher
476a620fe4 Fixed possible error when the returned message includes formatting characters. 2005-02-07 05:43:27 +00:00
Jeremy Fincher
6b75be6e60 Changed supybot.protocols.irc.queueDuplicateMessages.
Changed supybot.protocols.irc.queueDuplicateMessages to
supybot.protocols.irc.refuseToQueueDuplicateMessages, and changed the default
to be to allow duplicate messages, rather than to reject them.
2005-02-03 20:13:49 +00:00
Jeremy Fincher
f930913b05 Removed the sets import from irclib.py. 2005-02-03 19:17:26 +00:00
James Vega
68d3b830da Remove the use of format() in logger functions since they handle it natively. 2005-02-01 13:43:57 +00:00
James Vega
0fde2393e6 Update usage of utils.iter functions. 2005-01-31 15:22:48 +00:00
James Vega
de89bf0265 Update usage of utils.str functions. 2005-01-31 14:52:27 +00:00
James Vega
28cb5abc65 Update usage of functions in utils.gen. 2005-01-31 13:06:43 +00:00
Jeremy Fincher
c08d435267 Fixed bug in irclib.IrcState's handling of KICK messages; they wouldn't remove the channel if the bot was kicked from it. 2005-01-28 13:58:59 +00:00
Jeremy Fincher
5fd6bbb52d Completely restructured our utils modules.
Tons of changes.  Here's the summary of things that matter most:

* There is no more supybot.fix.
* There is no more supybot.webutils; now there is supybot.utils.web.
  * It's no longer webutils.WebError, but just utils.web.Error.
* You shouldn't import itertools, ideally, but instead import utils.iter.
* No more using imap/ifilter in commands unless absolutely necessary.  It's
  premature optimization and annoying.
* utils.str.format isn't quite ready yet, but will be soon.  That'll be the
  next big thing to fix in our code.
2005-01-27 06:59:08 +00:00
Jeremy Fincher
5019d10a1b Updated license years. 2005-01-19 13:33:05 +00:00