Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

reevaluate error handling for +s channels #2221

Open
slingamn opened this issue Feb 20, 2025 · 1 comment
Open

reevaluate error handling for +s channels #2221

slingamn opened this issue Feb 20, 2025 · 1 comment

Comments

@slingamn
Copy link
Member

from @progval :

>>> mode #nonexistent +o second
:testnet.ergo.chat 403 second #nonexistent :No such channel
>>> mode #secret +o second
:testnet.ergo.chat 482 second #secret :You're not a channel operator

This distinction leaks the existence of the secret channel. This is not a very big deal since you can always find out whether a secret channel exists by trying to JOIN it. Technically, this is silent whereas a successful JOIN notifies the occupants; however, failure to JOIN a secret channel that is also protected by +k or +i (which would be typical of channels that are actually sensitive) would also be silent.

@slingamn
Copy link
Member Author

442 (ERR_NOTONCHANNEL) is a pretty safe thing to send that covers both cases. (TOPIC currently sends 403 for a nonexistent channel, 442 for a secret or non-secret channel where you're not a member).

PRIVMSG and NOTICE will send 404 (ERR_CANNOTSENDTOCHAN).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant