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

On server/multi-user ping timeout, when users reconnect they are joined into channels they weren't in before #11

Open
knownsyntax opened this issue Nov 14, 2023 · 1 comment

Comments

@knownsyntax
Copy link

Version: ProvisionIRCd-3.0-beta

If you have the IRCd running, and it suddenly pings everyone else out on the server (but the process file is kept running) and users start to reconnect, they are rejoined into channels that they were never apart of or have never joined, but existed by other users and were shown on /list - Since this bug requires for users to be pinged, or to have a host connection that results in users to be ping timeout randomly (and other users to be connected in other channels as well as a shared channel with the ping timeout user), it may be difficult to reproduce.

No error logs were generated, outside of users being joined into other channels unexpectedly (including myself).

Actual Result:
User reconnects to the server/network and is automatically joined into channels that they were not in, nor where ever in, before. These channels are channels that other users were/are in, and do not need to be registered or have any channels modes changed outside of the default channel modes the server sets.

Expected Result:
User will rejoin the server/network and only be automatically joined into their current channels they were in before, or none at all.

@knownsyntax
Copy link
Author

knownsyntax commented Nov 14, 2023

hub-ircd.log
leaf-ircd.log

Please see the attached when I enabled some additional logging/debug output for all of the raw data in order to more helpful when debugging/fixing this issue, as it appears that when the hub and leaf connected it was forcing users (SJOIN) into incorrect channels based on their userIDs. The hub is running the same version as the leaf, and no one is on the hub but the u:line to services and the leaf server.

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

No branches or pull requests

1 participant