Commit graph

1453 commits

Author SHA1 Message Date
jesopo
a7d3fd93fc hmac.digest -> hmac.new (the former is too new) (sasl.scram) 2019-02-15 01:21:39 +00:00
jesopo
4e7bfee3a6 Only send +draft/delivered and +draft/read on private message 2019-02-15 00:07:33 +00:00
jesopo
3efe97f6bb copypaste fail, server -> event["server"] (message_tacking.py) 2019-02-14 21:59:00 +00:00
jesopo
52387900bc Support draft/delivered and draft/read (message_tracking.py) 2019-02-14 21:51:51 +00:00
jesopo
ec3096fb50 Put information about USERPASS in sasl/README.md 2019-02-14 12:28:36 +00:00
jesopo
d0ad43b027 Support a USERPASS sasl mechanism that picks the best user:pass mech (sasl) 2019-02-14 11:57:53 +00:00
jesopo
33cacbb904 Don't crash when we try to send a message to channel we're not in
(line_handler.py)
2019-02-14 08:36:41 +00:00
jesopo
15fc5f7124 raise EventError when no results are found, to avoid double stderr write (youtube.py) 2019-02-14 01:00:16 +00:00
jesopo
2794d7235b 'current_badges' -> 'badges' (badges.py) 2019-02-13 16:33:28 +00:00
jesopo
b5b0464873 Typo, 'recieved' -> 'received' (badges.py) 2019-02-13 16:32:31 +00:00
jesopo
3834b246d6 Add !clearbadges (badges.py) 2019-02-13 16:31:32 +00:00
jesopo
acbe02baa6 Support IRCv3 draft/setname proposal (#361) (line_handler.py) 2019-02-13 10:59:37 +00:00
jesopo
5b561b51f4 Fix completely broken chghost code. What on god's earth was I thinking. 2019-02-13 10:56:52 +00:00
jesopo
1927c3c8af Catch and propagate IRCv3's FAIL command (#357) (line_handler.py) 2019-02-13 10:39:10 +00:00
jesopo
460d56eb74 Never allow use of MD2 (sasl.scram) 2019-02-12 23:52:09 +00:00
jesopo
ac958384fe SCRAM doesn't need constant_time_compare, nonces prevent replay (scram.py) 2019-02-12 23:47:24 +00:00
jesopo
62d2449958 MONITOR actually catches NICK changes (nick_regain.py) 2019-02-12 21:01:28 +00:00
jesopo
ef43c9aeef Also use ISON even if MONITOR is supported - to catch NICK changes
(nick_regain.py)
2019-02-12 20:59:11 +00:00
jesopo
f2a7acfe4d Use RPL_ENDOFMOTD or ERR_NOMOTD to denote end-of-registration and a time to
check if we got MONITOR in 005 at any point (nick_regain.py)
2019-02-12 20:48:52 +00:00
jesopo
554b041822 Remove debug print (nick_regain.py) 2019-02-12 20:43:50 +00:00
jesopo
3fc2fec324 Add nick_regain.py, to watch for the bot's desired nick becoming free 2019-02-12 20:42:26 +00:00
jesopo
1f1a19b5b6 set nick to '<nickname>|' when we get a nickname-in-use error (line_handler.py) 2019-02-12 20:40:40 +00:00
jesopo
2e925a6853 user is null when we sent a NOTICE non-echo-message (line_handler.py) 2019-02-12 17:07:39 +00:00
jesopo
44df8240cc user is null when we're sending a message non-echo-mesasge (line_handler.py) 2019-02-12 17:04:55 +00:00
jesopo
e573f9de51 We can *receive* PRIVMSG/NOTICE without a prefix (line_handler.py) 2019-02-12 17:02:12 +00:00
jesopo
21b2e0bbe7 Typo, 'datetme' -> 'datetime' (ctcp.py) 2019-02-12 16:55:56 +00:00
jesopo
0e1535a88d Definte channel before trying to use it for event hook constuction
(line_handler.py)
2019-02-12 16:50:11 +00:00
jesopo
938495fc3a Refactor how CTCPs are sent through events 2019-02-12 16:49:57 +00:00
jesopo
b2d942027e Implement IRCv3 echo-message (line_handler.py) 2019-02-12 16:12:15 +00:00
jesopo
e1c81efa6f Add a way to blacklist CAPs per-network (line_handler.py) 2019-02-12 15:34:50 +00:00
jesopo
7e4c1cadb1 Add !cointoss to random_number.py 2019-02-12 15:23:02 +00:00
jesopo
ce23442f4b Use constant-time compare in permissions.py for password identifying 2019-02-12 11:59:47 +00:00
jesopo
9667b8a6e0 Move constant-time compare function to utils.security 2019-02-12 11:57:49 +00:00
jesopo
305b998a52 Use hmac.compare_digest to do a constant-time compare (sasl.scram) 2019-02-12 11:50:37 +00:00
jesopo
144182868c Upgrade resume.py to draft/resume-0.3 and support sending last-read timestamp 2019-02-12 11:14:36 +00:00
jesopo
8c9626f0a9 Put an strf format for ISO8601 in utils 2019-02-12 11:08:24 +00:00
jesopo
98b82c7f2c Insert label tag to lines in labeled BATCHes (line_handler.py) 2019-02-11 22:19:20 +00:00
jesopo
2f5a232c4e Hold on to tags and type for BATCHes 2019-02-11 22:15:12 +00:00
jesopo
b6df18930c bytes_written/bytes_read is now on IRCServer.socket (stats.py) 2019-02-11 18:26:16 +00:00
jesopo
399723db94 Show file add/remove/change *after* saying it's a push (github) 2019-02-11 11:17:07 +00:00
jesopo
18bb7ec4af Actually return function hook from _shutdown_hook (admin.py) 2019-02-11 10:09:39 +00:00
jesopo
e644888e3e Actually shutdown socket when !shutdown is called (admin.py) 2019-02-11 10:00:55 +00:00
jesopo
9b44b6cd13 Shift socket.socket related logic to IRCSocket.py 2019-02-11 10:00:41 +00:00
jesopo
d087143a5d Iterate through bot.servers.values(), not .keys() (admin.py) 2019-02-10 23:54:31 +00:00
jesopo
fadd21c6d9 Add !shutdown (admin.py) 2019-02-10 23:53:33 +00:00
jesopo
bb4ec082dd Let IRCLine.Line handle truncating command output 2019-02-10 20:49:59 +00:00
jesopo
abf5679b68 Parse sent data in IRCServer._send, not IRCServer.send 2019-02-10 20:49:03 +00:00
jesopo
9ecec75828 'jesopo pushed commit to master' -> 'jesopo pushed to master' (github) 2019-02-10 15:09:20 +00:00
jesopo
9235d23350 Show when pushes are forced (github) 2019-02-10 15:06:26 +00:00
jesopo
af3057dee0 Don't send empty JOIN when we have no saved channels (channel_save.py) 2019-02-10 14:55:46 +00:00