Skip to content

Conversation

@rophy
Copy link

@rophy rophy commented Jan 12, 2026

Follow up of #4509, which focuses on auth switch. This PR focuses on COM_CHANGE_USER.

@gkodinov gkodinov added the External Contribution All PRs from entities outside of MariaDB Foundation, Corporation, Codership agreements. label Jan 12, 2026
@vuvova vuvova self-requested a review January 13, 2026 11:44
Copy link
Member

@gkodinov gkodinov left a comment

Choose a reason for hiding this comment

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

Please use https://jira.mariadb.org/browse/MDEV-38550 instead of the original one.

@rophy
Copy link
Author

rophy commented Jan 14, 2026

Will continue working on this after #4509 got merged.

@rophy rophy changed the title MDEV-38431: [10.6] Fix COM_CHANGE_USER for long passwords MDEV-38550: [10.6] Fix COM_CHANGE_USER for long passwords Jan 15, 2026
@rophy rophy force-pushed the fix/MDEV-38431-2 branch 2 times, most recently from caa5f1c to 43678d9 Compare January 15, 2026 21:57
Add support for CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA in COM_CHANGE_USER
packet parsing, allowing passwords >= 251 bytes.

Changes:
- Server: parse_com_change_user_packet() now handles LENENC-encoded
  password length when CLIENT_PLUGIN_AUTH_LENENC_CLIENT_DATA is set
- Server: fix db pointer calculation for old protocol without
  CLIENT_SECURE_CONNECTION (need +1 to skip null terminator)
- Add regression test for COM_CHANGE_USER with long passwords

Note: This fix requires a corresponding client-side fix in libmariadb's
send_change_user_packet() to send LENENC-encoded passwords.
@rophy
Copy link
Author

rophy commented Jan 15, 2026

Updated.

The CI tests will not pass until both server and libmariadbclient are fixed. How do we manage such circular deps?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

External Contribution All PRs from entities outside of MariaDB Foundation, Corporation, Codership agreements.

Development

Successfully merging this pull request may close these issues.

2 participants