summary refs log tree commit diff
path: root/handle.c
AgeCommit message (Collapse)Author
2020-04-03Use gnu-case-range and gnu-conditional-omitted-operand extensionsC. McEnroe
I'm sad to do this but I just can't stand writing (foo ? foo : bar) anymore.
2020-03-31Add /ignore message filtering patternsC. McEnroe
2020-03-30Replace some declaration; while loops with for loopsC. McEnroe
I should have been using this for getopt loops already but the call here is slightly too long to fit on one line as a for loop.
2020-03-28Rewrite mode formatting again and write to logC. McEnroe
Going back to one line per mode change again because it's easier.
2020-03-25Log chat eventsC. McEnroe
Still missing is logging MODE changes, which will be hell, unless it just logs the raw stuff.
2020-03-23Track MODE in repliesC. McEnroe
2020-03-23Assume worst case for unknown user and host in splitMessageC. McEnroe
The default USERLEN of 9 doesn't have a great source, the RFC only says that nicks are length 9, so my assumption is that usernames are not longer.
2020-03-22Track own host, handle CHGHOSTC. McEnroe
2020-03-22Handle RPL_CHANNELMODEISC. McEnroe
2020-03-22Handle user mode changesC. McEnroe
2020-03-22Rewrite handleModeC. McEnroe
2020-03-18Handle RPL_UMODEISC. McEnroe
2020-03-09Ignore 422 ERR_NOMOTDC. McEnroe
pounce will start sending these because some silly clients don't think they're connected until some MOTD reply...
2020-03-08Set self.pos before handling the messageC. McEnroe
This intuitively feels wrong, but isn't. Most importantly, handleError immediately exits, but we still need to "consume" that message, otherwise pounce will keep sending it on reconnect. The same goes for any other handler that might cause an exit, such as a require parameter count failure.
2020-02-29Implement the causal.agency/consumer capabilityC. McEnroe
2020-02-25Add raw modes to mode messageC. McEnroe
2020-02-25Handle changing setParamModes, paramModes and other channel modesC. McEnroe
2020-02-25Fix handling EXCEPTS and INVEX without valuesC. McEnroe
2020-02-25Add /mode, /except, /invex and handle lists repliesC. McEnroe
2020-02-23Accumulate mode changes into a buffer for one messageC. McEnroe
2020-02-20Handle ERR_CHANOPRIVSNEEDEDC. McEnroe
2020-02-20Handle MODE changing channel list modesC. McEnroe
2020-02-20Handle MODE setting channel prefix modesC. McEnroe
2020-02-20Change ban list formattingC. McEnroe
2020-02-20Rearrange some handlersC. McEnroe
2020-02-20Handle RPL_INVITING when no invite-notifyC. McEnroe
2020-02-20Handle ERR_BANLISTFULLC. McEnroe
2020-02-20Add handlers for user-in-channel errorsC. McEnroe
2020-02-20Add generic error reply handlerC. McEnroe
This should have been in way earlier...
2020-02-19Add /ban, /unban and handle ban list repliesC. McEnroe
2020-02-19Format WHOIS signon date with %F %TC. McEnroe
2020-02-16Replace a lot of snprintf with a catf implementationC. McEnroe
2020-02-16Add 379 to WHOIS responsesC. McEnroe
2020-02-16Track EXCEPTS and INVEX modesC. McEnroe
2020-02-16Apply colorMentions to actionsC. McEnroe
The first-two-words branch works well for "/me verbs nick".
2020-02-15Replace small integers in size_t with uintC. McEnroe
2020-02-15Still add nick without prefixes to completeC. McEnroe
2020-02-15Track PREFIX modes and CHANMODESC. McEnroe
2020-02-15Show prefixes in NAMES and WHOIS repliesC. McEnroe
2020-02-15Separate network info from selfC. McEnroe
2020-02-14Add /inviteC. McEnroe
2020-02-14Add /awayC. McEnroe
2020-02-12Only exit on errorneous nick during registrationC. McEnroe
2020-02-12Add 378 to list of WHOIS responsesC. McEnroe
It's the one (from freenode anyway) that tells you where you're connecting from.
2020-02-12Add /listC. McEnroe
2020-02-12Handle RPL_AWAYC. McEnroe
2020-02-11Rename query ID on nick changeC. McEnroe
2020-02-11Don't insert color codes for non-mentionsC. McEnroe
2020-02-11Take first two words in colorMentionsC. McEnroe
This lets phrases like "hi june" get colored, but still doesn't get carried away.
2020-02-11Set self.nick to * initiallyC. McEnroe
Allows removing a bunch of checks that self.nick is set, and it's what the server usually calls you before registration. Never highlight notices as mentions.