about summary refs log tree commit diff
path: root/handle.c (follow)
Commit message (Collapse)AuthorAge
* Merge branch 'master' of git.causal.agency:pub/catgirl into somasis/tokiponaKylie McClain2022-01-27
|\
| * 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-+.
* | handle.c: o pona e kepeken pi nimi "e"Kylie McClain2022-01-27
| |
* | handle.c: o pona e toki tan /nickKylie McClain2022-01-27
| | | | | | | | kepeken ni li pona mute. kepeken tan tenpo pini li pakala.
* | o pana e nimi 'jan' tawa toki paliKylie McClain2022-01-27
| | | | | | | | | | | | | | | | | | | | | | | | toki ni li jo ala e nimi 'jan', la ona li pakala e nasin toki pi toki pona. ike la, toki sin ni li sama ala lukin toki pi wile toki. sina wile pona e ni la, sina ante mute e kon inputUpdate... [if these words [action messages] do not have the word jan, they break toki pona's system of speaking [grammar]. unfortunately, this new message does not have the same look as the message in the prompt. if you want to improve this, you have to greatly change the inputUpdate code...]
* | handle.c: o pona e toki pi pali toki /setnameKylie McClain2022-01-27
| | | | | | | | | | tenpo pini la, toki tan pali toki /setname li sama toki tan pali toki /nick; tenpo ni la mi sona e ante ona.
* | handle.c: o pana e toki sin tawa nimi anteKylie McClain2022-01-27
| | | | | | | | | | toki ni la toki "kama jo" li ike. toki sin ni li sama mute toki ni lon toki Inli.
* | handle.c: o pona e kepeken pi nimi 'nanpa'Kylie McClain2022-01-27
| | | | | | | | | | | | toki tan toki pini li toki e ni (insa toki Inli): "This room has a sixth person". toki li wile toki e ni: "This room has six people". tenpo pini la, kepeken mi pi nimi nanpa li pona ala!
* | handle.c: sin la, o pana e nimi 'jan' tawa toki paliKylie McClain2022-01-27
| |
* | handle.c: o weka e nimi 'jan' tan toki paliKylie McClain2022-01-27
| | | | | | | | | | toki ni li lukin pona. toki pini li lukin nasa; nimi 'jan' li jo e kule, taso la ona li wile jo ala e kule; nimi jan taso li jo e kule.
* | handle.c: o ante e kon WhoisGeneric tokiKylie McClain2022-01-27
| |
* | handle.c: kepeken nimi 'jan' tawa pali tokiKylie McClain2022-01-27
| |
* | mi pana e toki pona tawa ilo Meli Soweli!Kylie McClain2022-01-27
|/
* 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.
* Add 335 to WHOIS responsesJune McEnroe2021-01-28
| | | | | This is used by InspIRCd to indicate if a user is a bot (if it set user mode +B).
* Use Warm heat for replies to user-initiated commandsJune McEnroe2021-01-26
| | | | | Otherwise they are invisible with M-+ and commands having no output is confusing.
* Add -I highlight option and /highlightJune McEnroe2021-01-16
|
* Rename ignore code to filterJune McEnroe2021-01-16
|
* Don't pass nick to urlScan for MOTD and helpJune McEnroe2021-01-11
|
* Factor out reply count checking and decrementingJune McEnroe2020-12-30
|
* Add /whowasJune McEnroe2020-12-30
|
* Show setnames like nick changesJune McEnroe2020-12-30
|
* Add /setname commandJune McEnroe2020-12-29
| | | | | | I'm not sure about that replies check in handleStandardReply. If more of those are added the reply counter system will definitely need refactoring.
* Handle so-called Standard RepliesJune McEnroe2020-12-29
|
* Handle 437 ERR_UNAVAILRESOURCE like ERR_NICKNAMEINUSEJune McEnroe2020-12-05
| | | | | Not totally clear under what conditions 437 is returned, but if it happens during registration, we should pick a new nick.
* Remove static buffer from colorMentionsJune McEnroe2020-11-08
|
* Remove static buffer from capListJune McEnroe2020-11-08
|
* Highlight changed portion of topicJune McEnroe2020-11-08
| | | | "%.*ls" is useless.
* Double up /help for server helpJune McEnroe2020-10-02
| | | | | | While the automatic search via LESS is neat, I don't think it's very useful. Just always open the manual to the COMMANDS section, and fix it to append to LESS rather than replace it.
* Use WHO for /opsJune McEnroe2020-09-30
| | | | Accumulate names in a buffer and show away status.