Mark Veidemanis
1f178a20ed
Implement channel blacklisting
2020-11-01 19:54:24 +00:00
Mark Veidemanis
cb21ad8fca
Fix bug with using muser attribute when absent
2020-11-01 19:03:56 +00:00
Mark Veidemanis
c10274ccd6
Fix syntax error in reg command
2020-11-01 18:50:17 +00:00
Mark Veidemanis
9fd6688892
Implement setting modes in ZNC
2020-11-01 03:39:32 +00:00
Mark Veidemanis
f54a448d54
Prepare command loader for reloading commands
2020-11-01 03:38:47 +00:00
Mark Veidemanis
fe52561b71
Implement registration at net-level
2020-11-01 03:37:29 +00:00
Mark Veidemanis
09405f374e
Clarify message output on confirm command
2020-11-01 03:36:23 +00:00
Mark Veidemanis
16ab37cc0c
Log error when ZNC says a channel can't be joined
2020-10-31 23:58:51 +00:00
Mark Veidemanis
fc3a349cb3
Fix registration cancellation bug in regproc
2020-10-31 23:58:03 +00:00
Mark Veidemanis
fe86d30155
Fix various bugs and off by one with provisioning
2020-10-31 23:55:11 +00:00
Mark Veidemanis
7485bbefd1
Move WHO and NAMES logging to trace
2020-10-31 16:52:00 +00:00
Mark Veidemanis
82a98c9539
Don't deduplicate global messages (NICK/QUIT)
2020-10-31 16:51:24 +00:00
Mark Veidemanis
45f02c323b
Improve authentication detection
...
Add a negative check in the event we are authenticated and registered,
but not confirmed, as this fools other checks.
2020-10-31 16:49:37 +00:00
Mark Veidemanis
bdb3d059e3
Use zero-padded numbers to maximise usuable ports
2020-10-31 00:13:59 +00:00
Mark Veidemanis
e403852778
Error checking in testing for registration message
2020-10-31 00:13:09 +00:00
Mark Veidemanis
f3dd102096
Deauth bot when disconnected and lowercase user
2020-10-31 00:12:06 +00:00
Mark Veidemanis
1fec14d759
Clarify error message to be more helpful
2020-10-31 00:11:28 +00:00
Mark Veidemanis
b67eee42c1
Implement another level of logging for tracing
2020-10-31 00:10:33 +00:00
Mark Veidemanis
9e6dd5e03d
Note that arguments to list are optional
2020-10-31 00:06:35 +00:00
Mark Veidemanis
77e8ef4c16
Implement authentication checking on connection
2020-10-28 22:50:12 +00:00
Mark Veidemanis
c879caa9d7
Add checks in dedup for time-less messages
2020-10-28 22:46:22 +00:00
Mark Veidemanis
db7e5677d3
Fix decoding issue with some Redis keys
2020-10-28 22:30:49 +00:00
Mark Veidemanis
f848b5afd6
Provision users with lowercase names
2020-10-28 22:30:04 +00:00
Mark Veidemanis
3bc65f8456
Add the time field to some notifications
2020-10-28 22:26:41 +00:00
Mark Veidemanis
95ee63e399
Fix circular import in ChanKeep/provisioning modules
2020-10-28 18:38:27 +00:00
Mark Veidemanis
a1e045793c
Start implementing prefixes
2020-07-09 19:43:47 +01:00
Mark Veidemanis
f50a40d207
Fixes to auth detection and message parsing
...
* don't check authentication if the network doesn't need to
register
* don't pass through muser for ZNC type messages
* avoid duplicate message for queries containing highlights
* make a copy of the cast for metadata analysis to avoid poisoning it
* set up callback for when the instance is authenticated, so we can
request a LIST immediately if so desired
* separate out seeding functions to populate CHANLIMIT to ease future
work involving other options, such as PREFIX
2020-06-07 17:26:53 +01:00
Mark Veidemanis
4c08225a50
Remove condition-based monitoring system
2020-06-07 15:31:43 +01:00
Mark Veidemanis
11f15ac960
Fix various bugs in the event system
...
Squash many bugs in the event notification system and simplify the
code.
2020-06-02 21:34:15 +01:00
Mark Veidemanis
8103c16253
Fix syntax error in redis query
2020-05-31 21:54:43 +01:00
Mark Veidemanis
45070b06e2
Implement authentication detection
...
* pending command to see which instances have never authenticated
* authcheck command to see which instances are not currently
authenticated
2020-05-31 21:52:56 +01:00
Mark Veidemanis
12db2f349e
Add help for pending command
2020-05-31 16:40:51 +01:00
Mark Veidemanis
40e1f38508
Add additional error handling in user queries
2020-05-31 13:44:34 +01:00
Mark Veidemanis
63c97db12e
Function to select and merge IRC network defs
2020-05-31 13:23:09 +01:00
Mark Veidemanis
91885170f1
Check registration status before joining channels
...
Do not join channels if any relay for a network is unregistered.
2020-05-31 13:09:58 +01:00
Mark Veidemanis
7c23766763
Allow sending LIST to all networks at once
2020-05-31 13:08:00 +01:00
Mark Veidemanis
9e62ac62bc
Add confirm command
...
Confirm command to check which relays need manual
confirmation.
2020-05-31 12:32:12 +01:00
Mark Veidemanis
014de9f958
Remove leftover irc.json file
2020-05-30 21:42:26 +01:00
Mark Veidemanis
f90f2fdef7
Implement registration and confirmation of nicks
2020-05-30 21:40:10 +01:00
Mark Veidemanis
e0549cdd30
Restructure provisioning into fewer functions
2020-05-30 21:37:22 +01:00
Mark Veidemanis
a78229a288
Add irc.json to gitignore
2020-05-30 21:35:50 +01:00
Mark Veidemanis
918d410927
Fix variable scope in LIST error handling
2020-04-21 23:32:17 +01:00
Mark Veidemanis
bc4d5cba8e
Separate provisioning into user and auth info
2019-12-28 17:51:03 +00:00
Mark Veidemanis
376d1bd911
Add IRC network definitions
2019-12-28 17:50:38 +00:00
Mark Veidemanis
778690ae3a
Add more comments and remove obsolete code
2019-12-07 16:35:29 +00:00
Mark Veidemanis
9c4ea94ebd
Add requirements file
2019-11-17 18:52:47 +00:00
Mark Veidemanis
a20fcdb8fc
Remove some debugging code from ChanKeep
2019-10-31 15:54:07 +00:00
Mark Veidemanis
7ffb6125aa
Fix various bugs uncovered by the LIST system
...
* Work around Twisted's broken handling of spaces
* Work around Twisted's broken line decoding
* Don't run signedOn twice for relays
* Improved detection of whether the endpoint is connected to ZNC
* Delay a LIST until all configured relays are online
* Discard a LIST if there are no callbacks for it
* Get rid of some double-negative ternary blocks
2019-10-31 15:44:59 +00:00
Mark Veidemanis
b4fa747853
Fix LIST handling and message parsing
...
* Always use simple LIST syntax if it succeeded once after a failed
complex query
* Reject asking for a LIST twice
* Quickly discard any ISUPPORT messages that don't contain things we
need to use
* Detect the server name and drop any messages from the server
2019-10-20 16:44:33 +01:00
Mark Veidemanis
f34de8940f
Improve performance in userinfo
...
* Implement a nick -> user mapping, preventing a superfluous SSCAN on
the entire dataset for when networks are disconnected
* Use one thread for all channels when a network instance is
disconnected, instead of one thread per channel
* Made returns comprising of only a list into tuples
2019-10-17 20:19:35 +01:00