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

mod_whitelist nickserv support / defer system #4

Open
baines opened this issue Apr 14, 2017 · 1 comment
Open

mod_whitelist nickserv support / defer system #4

baines opened this issue Apr 14, 2017 · 1 comment

Comments

@baines
Copy link
Owner

baines commented Apr 14, 2017

It might be nice to allow whitelist / admin entries that are based on nickserv usernames instead of nicknames. This way, people who change nick would not need to be re-added, and it would ensure impersonators could not elevate their privileges.

The 'ACC *' command to nickserv would probably be useful for this.

One problem however, is that we would want to get the nickserv response immediately in mod_whitelist's mod_msg handler - but new messages are not polled during a module callback.

One potential solution to this would be to add a "defer" system, possibly using the POSIX getcontext / setcontext functions to yield execution in the mod_msg handler, and return once the main loop receives the next PM.

I haven't fully thought this through yet.

@baines
Copy link
Owner Author

baines commented Aug 12, 2017

A potentially simpler solution than using the ucontext_t stuff is to use this IRCv3 capability:
http://ircv3.net/specs/extensions/account-notify-3.1.html instead of messaging nickserv.

It would certainly not be as powerful as allowing modules to defer themselves until an arbitrary event though.

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