about summary refs log tree commit diff
path: root/handle.c (follow)
Commit message (Collapse)AuthorAge
* Remove use of sysexits.hJune McEnroe2024-05-22
| | | | | Preserve exit status 69 (EX_UNAVAILABLE) for getting disconnected. Use 127 for failing to exec, like the shell.
* Revert "Work-in-progress showing prefixes"June McEnroe2023-07-07
| | | | This reverts commit dc132b4350d207d147bb79d997c3f8b511c4ac30.
* Work-in-progress showing prefixesJune McEnroe2023-07-07
|
* Fix what went wrong, part 3June McEnroe2023-02-05
|
* Fix what went wrong, part 2June McEnroe2023-02-05
|
* Fix what went wrong, part 1June McEnroe2023-02-05
|
* Handle missing LIST reply topic parameterJune McEnroe2022-09-23
|
* Remove WHO reply handlersJune McEnroe2022-09-11
|
* Generate /ops from cacheJune McEnroe2022-09-11
|
* Set pointer to Entry in CursorJune McEnroe2022-09-11
| | | | This feels a little redundant but the API makes sense, I think?
* Don't use cached color to route away replyJune McEnroe2022-08-06
| | | | Doesn't work when colors are disabled.
* Track prefix bitsJune McEnroe2022-08-02
|
* Move cache color to an Entry structJune McEnroe2022-07-31
| | | | So that more values can be added sensibly.
* Rename cache{Prefix,Substr} to cache{Complete,Search}June McEnroe2022-07-30
|
* Switch to cache interfacesJune McEnroe2022-07-30
|
* Show STATUSMSG prefixJune McEnroe2022-07-30
|
* Refactor colorMentions to be seprintf-likeJune McEnroe2022-07-30
|
* Only show old topic if something was removedJune McEnroe2022-06-26
|
* Use two lines to show topic diffsJune McEnroe2022-06-24
|
* Allow setting fallback nicks and highlight on anyJune McEnroe2022-05-29
| | | | | As a side-effect, even with only one nick set you'll still be highlighted by it even if your current nick is different.
* Put unknown numerics in parenthesesJune McEnroe2022-05-29
| | | | For some reason this makes it look so much better to me.
* Route unknown channel replies to channelsJune McEnroe2022-05-08
| | | | | Also prefix with the numeric. I don't really want to show numerics to the user, but I'm not sure these really make sense without.
* Show "You arrive" message only onceJune McEnroe2022-05-08
|
* Write unknown replies to Network with Ice heatJune McEnroe2022-05-08
|
* Specify commands which depend on capsJune McEnroe2022-02-26
| | | | Currently only /setname.
* Factor out input handling to input.cJune McEnroe2022-02-19
|
* Factor out window management to window.cJune McEnroe2022-02-19
|
* Prompt for empty server or SASL passwordsJune McEnroe2022-02-12
|
* Avoid sending null byte in SASL PLAIN 2.0aJune McEnroe2022-01-16
| | | | | | | | Woops! BASE64_SIZE is the size of the string buffer. Somehow ergo is the only server software (that I know of) to reject the accidental null byte. Reported by smlavine.
* Use Cold for away notices in queriesJune McEnroe2022-01-16
| | | | So that they can be hidden with M-+.
* Make the /ops response more flavourfulJune McEnroe2021-11-16
| | | | How did this normal sounding format string get in there!
* Handle RPL_WHOISSPECIALJune McEnroe2021-11-10
| | | | <https://modern.ircdocs.horse/index.html#rplwhoisspecial-320>
* Fix strptime decode for musl libcpsykose2021-10-26
| | | | | | | | | | | | POSIX does not define a %F for strptime[1], but does define %F for strftime[2]. Afaik most libc's implement %F for both, but musl is very standards-compliant and does not have %F on strptime, leading to unparsed message tag times, which causes all backlog sent from bouncer on startup to have a timestamp of the current time, instead of the actual timestamp sent. [1] https://pubs.opengroup.org/onlinepubs/9699919799/functions/strptime.html [2] https://pubs.opengroup.org/onlinepubs/9699919799/functions/strftime.html
* Correct handling of colons in SASL PLAINJune McEnroe2021-09-09
| | | | | | Only the first colon should be replaced with a null byte. Ported from pounce.
* Save invited channel for /joinJune McEnroe2021-07-02
|
* Handle "\1ACTION\1" empty actionsJune McEnroe2021-06-20
|
* Don't match actions in noticesJune McEnroe2021-06-20
|
* Add -m mode option to set user modesJune McEnroe2021-06-18
|
* Handle 338 as whois replyJune McEnroe2021-06-17
| | | | Used by Solanum for "actually using host".
* Reset formatting after realname in setnameJune McEnroe2021-06-12
| | | | Missed this one.
* Avoid trailing comma in whois channels listsJune McEnroe2021-06-10
| | | | The format of the reply is defined as "<nick> :{[@|+]<channel><space>}".
* Replace catf with seprintfJune McEnroe2021-06-09
|
* Use reverse video not colors for topic change when disabledKlemens Nanni2021-05-25
| | | | | | | | | | | | | | | | | `-H 0,0`/"hash = 0,0" makes catgirl mostly colorless which is great, but topic changes still hardcode brown/green colors to show differences which is usually not desired by users (like me) disabling colors. Go for a less eye stressing topic change message that shows both old and new in reverse video with default terminal colors. This isn't perfect, other parts of catgirl still hardcode colors and `-H 0,0`/"hash = 0,0" was never meant to disable colors completely, but topics change often enough that avoiding less readable^Waccessible topic diffs seems sensible enough. NB: parseHash() is brittle and "0,0" is not the only value disabling colors...
* Use color enum instead of hardcoded valueKlemens Nanni2021-05-25
|
* Don't require 4 parameters to ERR_USERONCHANNELJune McEnroe2021-05-20
| | | | It should have 4, but the handler only uses 3.
* Reset formatting after realnamesJune McEnroe2021-04-27
|
* Always show 341 RPL_INVITINGJune McEnroe2021-04-16
| | | | | | | | | At least in InspIRCd's implementation, you only get invite-notify INVITEs if you are op, so inviting with no op (where allowed by a channel mode) results in only a 341. On the other hand, inviting as an op produces both a 341 and an INVITE, so will be displayed twice, but showing something sometimes twice is better than not showing it at all.
* Skip STATUSMSG prefixesJune McEnroe2021-04-02
| | | | | This feature is rarely used, so just skip STATUSMSG prefixes in the target so messages get routed correctly.
* Use separate reply counts for automatic join topics/namesJune McEnroe2021-02-21
| | | | | | This restores showing the topic and names for automatic joined channels, while still avoiding touching the windows, by using Cold heat.
* Only treat a single -j join as explicitJune McEnroe2021-02-04
| | | | | | | | | | | In other words, only automatically switch to an automatically joined channel window if there's only one. Otherwise, stay on the <network> window and avoid touching the channel windows with their automatic topic and names replies. This fixes unintentionally clearing saved window unread counts when rejoining channels automatically by switching to them as they are joined.