blob: c29c3ba4c34329f6f9f0118fd0bab14a29a2ef25 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
All the TODOs sprinkled throughout the code!
Configurable rotation of replay and debug logs.
Automatic rotation of replay log along with debug log? Especially given that replay from before startup is not sent.
Configurable timestamp format in logs.
macOS compiler may need limits.h included in structures.h.
"Starting log replay...." followed by "Unable to read replay log file!" even though replay seemed to work?
Can memory usage be reduced further? (e.g. better channel struct management)
Ability to load new certificate whilst running.
Remaining strncmps are safe but could do with length comparisons too. "Our initial MODE" comparison may need to be more complex.
"/topic" response goes to all clients.
Connection/login logging - is debug.log sufficient?
Do connectcommands happen on reconnect?
Are "no such nick/channel" messages as shown in clients correct compared to non-(bla)bouncer clients?
Support ban list when requesting /mode #channel +b (commands 367 and 368 at least) - ensure max ban list length is supported. example:
:irc.tghost.co.uk 367 l_bratch #foo *!foo@bar.bz l_bratch 1642588731
:irc.tghost.co.uk 367 l_bratch #foo *!*bbuser@*.bratch.co.uk l_bratch 1642588681
:irc.tghost.co.uk 368 l_bratch #foo :End of Channel Ban List
Or if there are no bans then just 368:
:irc.tghost.co.uk 368 l_bratch #foo :End of Channel Ban List
Other IRC clients log stuff like "Mar 31 16:58:15 * #foobar :No topic is set." - can/should we?
Git version in code.
Connecting from irssi triggers doautoreplay() from "USER received" in message.c twice.
Use the line number based replay log reading method from lastspoke rather than the inefficient re-read + line offset method in time replays? (And potentially remove a bunch of code re-use.)
What happens with lastspoke when there was no lastspoke time? Potentially opt to fall back on time based. And/or add lastspoke + time?
Is it possible to periodically reduce fdmax if higher numbered clients are gone?
Debug log ("checking client socket <i> out of <fdmax>") gets busy after fdmax gets relatively high, and might be possible to avoid unnecessary looping.
BLABOUNCER/stdin functions to add:
- List connected/authenticated clients
Crash when requesting 30 hour replay.
|