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

Issue/#977 Remove IRC password functionality #978

Merged

Conversation

Askaholic
Copy link
Collaborator

@Askaholic Askaholic commented Oct 15, 2023

This will prevent the logs from being filled with warnings about failing to update NickServ password whenever someone logs in.

Closes #977

await self.send({
"command": "irc_password",
"password": new_irc_password
"password": hexlify(os.urandom(16)).decode()
})
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we even need to send the message?

I know removing it from the spec would be a backwards breaking change but it seems like just not sending it should be fine.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mmm, according to my notes about version numbers I think not sending it would be a breaking change. I would consider it part of the command_auth message flow where if you send a valid token then you always expect the next message that comes back to you to be irc_password, so removing that would be a breaking change to any code that was built on that message flow. This is also supported by my integration tests which fail if I remove that command.

https://github.com/FAForever/server/blob/develop/CONTRIBUTING.md#version-numbers

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe there don't exist any client implementations that rely on that in practice, but IDK. I feel like it doesn't really hurt much to keep it and it ensures that the protocol definitely remains backwards compatible.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In general yes, but the websocket change is a breaking change and we'll force all users to update to new irc+websocket for lobby

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, but that's just a change to the message transport. As far as like the logic of how to handle certain messages that wouldn't be affected by the websocket change.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah didn't realize it was considered part of the auth flow. I just considered it as a message that comes at some point after auth

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's certainly a bit subjective what the 'flow' really is, but since the message is sent unconditionally after validating the token I would consider it to be part of the 'flow'.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wouldn't it be more expressive for future us to set it to a fixed string "deprecated" instead of using random bits?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, I can get behind that

@Askaholic Askaholic force-pushed the issue/#977-deprecate-irc-password branch from cca62a2 to 55d421d Compare October 15, 2023 18:19
@Askaholic Askaholic force-pushed the issue/#977-deprecate-irc-password branch from 55d421d to 061accd Compare October 16, 2023 13:57
@Askaholic Askaholic merged commit 5c92c84 into FAForever:develop Oct 17, 2023
7 checks passed
@Askaholic Askaholic deleted the issue/#977-deprecate-irc-password branch October 17, 2023 19:20
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

Successfully merging this pull request may close these issues.

Anope database is going away with IRC changes
3 participants