summaryrefslogtreecommitdiff
path: root/TODO
AgeCommit message (Collapse)Author
2024-03-31Don't bother trying to do removenickfromchannel() after a PART or a KICK if ↵Luke Bratch
we just did removechannel() because the PARTing/KICKed nick was ours.
2024-03-30Implement changing client-side TLS certificate and key paths, and reloading ↵Luke Bratch
certificate/key at runtime when doing a REHASH (BLABOUNCER command or SIGHUP).
2024-03-30Update TODO.Luke Bratch
2024-03-29Update TODO.Luke Bratch
2023-08-01Always close() the replay log file if it's been opened.Luke Bratch
2023-08-01Correctly handle too many clients by doing accept() and close() immediately ↵Luke Bratch
rather than trying to add to clients[] struct.
2023-07-24Include 437 (ERR_UNAVAILRESOURCE) as part of "nick in use" resolution upon ↵Luke Bratch
connecting.
2023-04-09Fix ban list request handling - support both "MODE #channel b" and "MODE ↵Luke Bratch
#channel +b".
2023-04-09Update TODO.Luke Bratch
2023-04-08Improve stdin handling (only available when running in foreground mode) - ↵Luke Bratch
don't get stuck in a loop when handling EOF/^D/Ctrl+D, improve debug output, improve comments, initialise variables more safely, exit main loop on errors.
2023-03-23Update TODO.Luke Bratch
2023-03-21Don't try to close log file if the pointer was NULL.Luke Bratch
2022-11-25Fix broken debugprint() call in isnickinanychannel() which was referencing a ↵Luke Bratch
non-existent printf string.
2022-11-25Implement fake QUIT handling via a NOTICE when doing a replay.Luke Bratch
Since user QUIT messages don't contain channel names, clients that didn't know which channels a nick was in when receiving a quit message for that nick can't show a per-channel QUIT notification. Some clients just display the QUIT message in the server status window, others silently ignore it. Cater for those clients by sending a NOTICE about the QUIT rather than replaying it - assuming the nick isn't still in any of our channels.
2022-11-24Fix replaymode = "lastspoke" by using line numbers rather than time to ↵Luke Bratch
calculate replay start point. Introduce new function doreplaylastspoke() to achieve this, move doreplay() into replay.c as doreplaytime() and refactor common things into sanitisereplay().
2022-11-23Update TODO.Luke Bratch
2022-09-02Deal with servers only sending a nick rather than nick!user@host as the last ↵Luke Bratch
token of greeting 001.
2022-02-10Relay server PINGs to all clients in case they rely on PINGs to stay alive.Luke Bratch
2022-01-03Increase maximum auto join channels from 10 to 40, correctly check for ↵Luke Bratch
maximum configuration array length, correct configuration array debug output text.
2021-01-25Use a space followed by a colon to determine the final parameter in ↵Luke Bratch
extractfinalparameter(). This fixes the topic being stored incorrectly when the setter's host is a raw IPv6 address.
2021-01-19Fix various issues where strncmp was only comparing a substring.Luke Bratch
This fixes issues such as when JOINing a channel whose name is a substring of another channel, things like PARTing don't work properly.
2021-01-18Make the "channels" configuration file entry an array.Luke Bratch
2020-10-22Send fully formed PONG responses to client PINGs, particularly relevant ↵Luke Bratch
after server timeouts/reconnects e.g. for XChat.
2020-10-21Don't have arrindex() return 0 on failure as 0 is a valid index. Instead ↵Luke Bratch
return -1 and change callers to check this.
2020-10-21Improve debug output in readreplayline().Luke Bratch
2020-10-21Correct detection of changed nick for updating existing clients when ↵Luke Bratch
reconnecting to server after a timeout.
2020-10-21Mark each channel as not having received nick names yet so existing clients ↵Luke Bratch
get channel nicks after server reconnections.
2020-01-05Fix some situations where the remote IP of a connecting/disconnecting client ↵Luke Bratch
is wrong in the debug log and NOTICEs.
2020-01-05Correct a comment.Luke Bratch
2019-12-23Add BLABOUNCER VERSION command and change version string to have -git suffix ↵Luke Bratch
between releases.
2019-12-22Significantly reduce memory usage by only initialising channel struct ↵Luke Bratch
elements when they are used for the first time.
2019-12-22Make full debug output optional for extractnickfromprefix() and ↵Luke Bratch
stripprefix() to avoid huge debug logs when using replaymode = "lastspoke" combined with DEBUG_FULL.
2019-10-02Try to make removenickfromallchannels() much faster when another user QUITs ↵Luke Bratch
by ignoring unused channel indexes.
2019-10-02"LOG_MODE" should be "type == LOG_MODE" in logging.c.Luke Bratch
2019-10-02Various typo fixes.Luke Bratch
2019-09-16Log user/channel mode setting in the replay and normal logs.Luke Bratch
2019-09-16Make all log filenames lowercase - since IRC nicks and channel names are ↵Luke Bratch
case-insensitive, we can ensure a nick/channel with varying case always ends up in the same log file.
2019-09-16Correctly log and NOTICE new connections' remote IP addresses.Luke Bratch
2019-09-15Log nick changes to the normal log file(s).Luke Bratch
2019-09-15Start tracking nicks in channels (upon JOIN/PART/QUIT/NICK) and use that to ↵Luke Bratch
correctly log QUITs in the replay log and normal log(s).
2019-09-14Specify multiple nicks using a configuration array instead of multiple ↵Luke Bratch
individual settings.
2019-09-14Implement arrays in the configuration file and start using them to allow for ↵Luke Bratch
multiple connect commands.
2019-09-14Handle ignoring replay messages from before we launched better to avoid ↵Luke Bratch
misleading error messages going to clients.
2019-09-12Make some older compilers happy by specifying -D_BSD_SOURCE and -std=gnu99.Luke Bratch
2019-09-12Change Makefile to not leave separate .o files lying around.Luke Bratch
2019-09-12Log server messages to file named <ircdname>.log.Luke Bratch
2019-09-12Adopt the locale of the environment for locale-dependent things like date ↵Luke Bratch
formats.
2019-09-07Avoid more replay log NICK synchronisation issues by ignoring replay log ↵Luke Bratch
nick changes from us if not our current nick, and by completely ignoring replaying any type of replay log line from before blabouncer was launched.
2019-09-07Only relay channel ban information to the client that requested it.Luke Bratch
2019-09-07Avoid non-existent users appearing in channels after they change nicks by ↵Luke Bratch
replay logging nick changes.