Maja changed the topic of ##bash-crimes to: we bash back | club of folks preoccupied in whether they could, not whether they should | logs https://libera.irclog.whitequark.org/~h~bash-crimes
<sdomi> JAA: good job! ^^
<JAA> You can make it work with InspIRCd, too.
<JAA> { sleep 3; printf %s\\n 'JOIN #channel' 'PRIVMSG #channel :cURL supports IRC!'; } | curl --http0.9 https://irc.example.org:6697 -X $'USER curl 0 * :curl\nNICK curl\nPING :' --upload-file - -H Host: -H User-Agent: -H Accept: -H Transfer-Encoding: -H Expect: -v
<JAA> sdomi: I continued playing with this, and I discovered that curl seems to buffer the incoming messages for some reason. If you run the above with the terminal as stdin, you don't see the server messages (001 etc.) for a long time. --no-buffer doesn't help. I can't reproduce it with a tiny Python test server, and it's not on the network side.
<JAA> I'll take that to #curl as soon as I figure out a way to reproduce it without the IRC abuse. :-D
<JAA> Turns out it's related to `-H Expect:`. I managed to reproduce it with 'normal' HTTP now.
<misentropy> blursed curl
<JAA> Totally sane workaround for IRC: `--expect100-timeout $((1 << 32))`