Closed
Description
Description
If upper case non-ASCII characters are supplied in the answer to a verification question, the answer will be rejected even if it was correct.
Originally reported here.
Steps to reproduce
- Include an upper case non-ASCII character in the accepted answer for a verification question.
- As a guest, enter the exact same string when asked a verification question.
- Note how the correct answer is rejected with an error message.
Environment (complete as necessary)
- Version/Git revision: f3b02b8
- Database Type:
- Database Version:
- PHP Version:
Additional information/references
The cause appears to be that we use $smcFunc['strtolower']() to convert the expected answer(s) to lower case, but plain strtolower() to convert the supplied answer to lower case. This means that upper case non-ASCII characters remain upper case in the supplied answer, and therefore that the comparison between the two fails.