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

registered channels should always be active #1507

Closed
slingamn opened this issue Jan 26, 2021 · 7 comments
Closed

registered channels should always be active #1507

slingamn opened this issue Jan 26, 2021 · 7 comments

Comments

@slingamn
Copy link
Member

See #1477 and #704 among others. This is a proposal to simplify some logic:

  1. Registered channels should be proactively created as part of server startup
  2. They should remain even if they have no members
  3. They should appear (with their topics) in LIST output
@RunBarryRun
Copy link
Contributor

Hello People & Happy New Year! Hope this message finds all of you safe, healthy and happy!
Following the above issue:
A) +R channel mode for registered channels to indicate them as registered and permanent (Like the +P mode for persistent/permanent channels used by other ircds)
OR
B) ChanServ actually joins registered channel. This way remain permanently active.

@slingamn
Copy link
Member Author

Ah, it's not necessary to reproduce the CHANSERV GUARD behavior --- the ircd knows which channels are registered so it can just special-case them (in fact, it already special-cases them, just not in the ways described by this ticket).

@Mikaela
Copy link
Contributor

Mikaela commented Jan 26, 2021

I am not sure a separate registered mode is required, but I agree on ChanServ or similar joining if there is only one non-op present to avoid some (misconfigured?) clients attempting to autocycle for gaining ops. I think Atheme ChanServ does that too leaving once there are two users in the room.

I think empty rooms could simply stay empty until the first user appears.

@slingamn
Copy link
Member Author

This isn't necessary in our implementation either --- if a channel is registered, even if you are the first person to join it you will not get +o. (This is an aspect of "services" being fully integrated into the ircd: the ircd always knows whether a channel is registered.)

@Mikaela
Copy link
Contributor

Mikaela commented Jan 26, 2021

The point of the behaviour I described is to stop the client from infinite cycle looping as it won't understand channel being registered

@slingamn
Copy link
Member Author

Ah, that makes sense. I still don't really want to have ChanServ joining channels (that feels like "legacy IRC" to me).

@RunBarryRun
Copy link
Contributor

RunBarryRun commented Jan 26, 2021

Ah, that makes sense. I still don't really want to have ChanServ joining channels (that feels like "legacy IRC" to me).

:) its not that bad. :)
In addition, it is the simplest way to resolve issues like permanent status of a channel, /list and Unregister issue...etc...
however a unkickable user mode should be implemented to avoid kicking CS
😀

slingamn added a commit to slingamn/ergo that referenced this issue Feb 3, 2021
Registered channels should be eagerly created on startup, and should
remain (and be visible in LIST) even when they have no members.
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

3 participants