chireiden / shanghai

Shanghai
GNU General Public License v3.0
4 stars 2 forks source link

Network logins (nickserv, SASL, ...) #7

Open FichteFoll opened 8 years ago

FichteFoll commented 8 years ago

The core provide methods of hooking every message possible, incoming and outgoing, so that plugins can do their stuff when they need to (and prevent the core from doing its default thing). But how should configuration work?

We could just have plugin-specific configuration per network and only enable the login provider plugin we need (via #8). That sounds like the most flexible and general approach.


List of login methods:

Can there be multiple methods on a single network? Specifically something like server password and nickserv.

FichteFoll commented 8 years ago

Older idea:

Have a "login_method" key in the general network configuration that plugins can access, and then perhaps a login_provider plugin that handles the different login methods which need to register with the provider. That way we can also panic if an invalid or unavailable login method is requested.

FichteFoll commented 8 years ago

Login methods are going to be provided by plugin(s) respectively (see #35), except for PASS, which should be handled by the core since it's integral to the IRC protocol. This would solve all questions raised in OP.